python入门之数据结构详细介绍以及代码示例

2023-03-20 11:45:44 浏览数 (1)

Python 中的数据结构是指在 Python 中可用的数据类型,包括列表、元组、字典、集合等。下面我们将分别介绍这些数据结构的特点和使用方法。

列表(List)

列表是 Python 中最基本的数据结构之一,它可以存储任意类型的数据,包括数字、字符串、布尔值、列表、元组、字典等。列表用方括号 [] 包含,各个元素之间用逗号分隔。

创建列表

下面是一个创建列表的例子:

代码语言:python代码运行次数:0复制
# 创建一个包含数字、字符串和布尔值的列表

my_list = [1, 2, 3, 'hello', True, False]



# 创建一个空列表

empty_list = []

访问列表元素

列表中的元素可以通过下标来访问,下标从 0 开始,负数下标表示从后往前数,例如 -1 表示最后一个元素。

代码语言:python代码运行次数:0复制
# 访问列表中的第一个元素

print(my_list[0])   # 输出 1



# 访问列表中的最后一个元素

print(my_list[-1])  # 输出 False

切片

除了单个元素,我们还可以通过切片来访问列表的一部分。切片用冒号 : 分隔起始下标和终止下标,不包含终止下标对应的元素。

代码语言:python代码运行次数:0复制
# 访问列表中的前三个元素

print(my_list[:3])  # 输出 [1, 2, 3]



# 访问列表中的第二个和第三个元素

print(my_list[1:3])  # 输出 [2, 3]

修改列表元素

列表中的元素是可变的,可以通过下标来修改它们的值。

代码语言:python代码运行次数:0复制
# 修改列表中的第一个元素

my_list[0] = 100



# 输出修改后的列表

print(my_list)  # 输出 [100, 2, 3, 'hello', True, False]

添加元素

列表中可以通过 append() 方法来添加元素。

代码语言:python代码运行次数:0复制
# 向列表末尾添加一个元素

my_list.append('world')



# 输出修改后的列表

print(my_list)  # 输出 [100, 2, 3, 'hello', True, False, 'world']

删除元素

列表中可以通过 del 语句或者 remove() 方法来删除元素。

代码语言:python代码运行次数:0复制
# 删除列表中的第一个元素

del my_list[0]



# 输出修改后的列表

print(my_list)  # 输出 [2, 3, 'hello', True, False, 'world']



# 删除列表中的字符串元素

my_list.remove('hello')



# 输出修改后的列表

print(my_list)  # 输出 [2, 3, True, False, 'world']

元组(Tuple)

元组是一种不可变的序列,与列表类似,但元组中的元素不能修改。元组用圆括号 () 包含,各个元素之间用逗号分隔。

创建元组

下面是一个创建元组的例子:

代码语言:python代码运行次数:0复制
# 创建一个包含数字、字符串和元组的元组

my_tuple = (1, 2, 3, 'hello', (4, 5, 6))



# 创建一个包含单个元素的元组

single_tuple = (1,)

访问元组元素

元组中的元素可以通过下标来访问,下标从 0 开始,负数下标表示从后往前数,例如 -1 表示最后一个元素。

代码语言:python代码运行次数:0复制
# 访问元组中的第一个元素

print(my_tuple[0])   # 输出 1



# 访问元组中的最后一个元素

print(my_tuple[-1])  # 输出 (4, 5, 6)

切片

与列表类似,元组也支持切片操作。

代码语言:python代码运行次数:0复制
# 访问元组中的前三个元素

print(my_tuple[:3])  # 输出 (1, 2, 3)



# 访问元组中的第二个和第三个元素

print(my_tuple[1:3])  # 输出 (2, 3)

元组不可变性

元组中的元素是不可变的,因此不能通过下标来修改它们的值。

代码语言:python代码运行次数:0复制
# 修改元组中的第一个元素(错误示范)

my_tuple[0] = 100  # 报错:TypeError: 'tuple' object does not support item assignment

解构元组

元组可以通过解构的方式来获取其中的元素。

代码语言:python代码运行次数:0复制
# 解构元组

a, b, c, d, e = my_tuple



# 输出解构后的变量

print(a, b, c, d, e)  # 输出 1 2 3 hello (4, 5, 6)

字典(Dictionary)

字典是一种无序的键值对集合,键和值都可以是任意类型的数据。字典用花括号 {} 包含,每个键值对之间用冒号 : 分隔,键和值之间用逗号分隔。

创建字典

下面是一个创建字典的例子:

代码语言:python代码运行次数:0复制
# 创建一个包含字符串和数字键值对的字典

my_dict = {'name': 'Alice', 'age': 18, 'gender': 'female'}



# 创建一个空字典

empty_dict = {}

访问字典元素

字典中的元素可以通过键来访问。

代码语言:python代码运行次数:0复制
# 访问字典中的 'name' 键对应的值

print(my_dict['name'])  # 输出 Alice



# 访问字典中的 'age' 键对应的值

print(my_dict['age'])  # 输出 18

修改字典元素

字典中的元素是可变的,可以通过键来修改它们的值。

代码语言:python代码运行次数:0复制
# 修改字典中的 'name' 键对应的值

my_dict['name'] = 'Bob'



# 输出修改后的字典

print(my_dict)  # 输出 {'name': 'Bob', 'age': 18, 'gender': 'female'}

添加元素

字典中可以通过键来添加元素。

代码语言:python代码运行次数:0复制
# 向字典中添加一个键值对

my_dict['phone'] = '123456789'



# 输出修改后的字典

print(my_dict)  # 输出 {'name': 'Bob', 'age': 18, 'gender': 'female', 'phone': '123456789'}

删除元素

字典中可以通过 del 语句来删除元素。

代码语言:python代码运行次数:0复制
# 删除字典中的 'gender' 键值对

del my_dict['gender']



# 输出修改后的字典

print(my_dict)  # 输出 {'name': 'Bob', 'age': 18, 'phone': '123456789'}

遍历字典

字典中的元素可以通过循环来遍历。

代码语言:python代码运行次数:0复制
# 遍历字典中的所有键

for key in my_dict:

    print(key)



# 遍历字典中的所有值

for value in my_dict.values():

    print(value)



# 遍历字典中的所有键值对

for key, value in my_dict.items():

    print(key, value)

集合(Set)

集合是一种无序的、不重复的元素集合。集合用花括号 {} 包含,各个元素之间用逗号分隔。

创建集合

下面是一个创建集合的例子:

代码语言:python代码运行次数:0复制
# 创建一个包含数字和字符串的集合

my_set = {1, 2, 3, 'hello', 'world'}



# 创建一个空集合

empty_set = set()

添加元素

集合中可以通过 add() 方法来添加元素。

代码语言:python代码运行次数:0复制
# 向集合中添加一个元素

my_set.add('python')



# 输出修改后的集合

print(my_set)  # 输出 {1, 2, 3, 'hello', 'world', 'python'}

删除元素

集合中可以通过 remove() 方法来删除元素。

代码语言:python代码运行次数:0复制
# 删除集合中的 'hello' 元素

my_set.remove('hello')



# 输出修改后的集合

print(my_set)  # 输出 {1, 2, 3, 'world', 'python'}

集合运算

集合支持并集、交集、差集等运算。

代码语言:python代码运行次数:0复制
# 创建两个集合

set1 = {1, 2, 3, 4, 5}

set2 = {4, 5, 6, 7, 8}



# 计算两个集合的并集

print(set1 | set2)  # 输出 {1, 2, 3, 4, 5, 6, 7, 8}



# 计算两个集合的交集

print(set1 & set2)  # 输出 {4, 5}



# 计算两个集合的差集

print(set1 - set2)  # 输出 {1, 2, 3}



# 计算两个集合的对称差集(即除了交集之外的元素)

print(set1 ^ set2)  # 输出 {1, 2, 3, 6, 7, 8}

总结

Python 中的数据结构包括列表、元组、字典、集合等。它们各自有着不同的特点和使用方法,根据具体的需求选择合适的数据结构可以提高代码的效率和可读性。

0 人点赞