前言
在Python中,列表、字典、元组和集合是四种常用的数据结构。
它们各有特点和用途。下面是这些类型的主要知识点:
1. 列表(List)
特点:
- 有序集合
- 可变(可以增加、删除、修改元素)
- 支持重复元素
- 使用方括号
[]
定义
操作:
- 创建列表:
my_list = [1, 2, 3]
- 访问元素:
my_list[0]
(访问第一个元素) - 修改元素:
my_list[0] = 10
- 添加元素:
my_list.append(4)
- 插入元素:
my_list.insert(1, 5)
- 删除元素:
my_list.remove(2)
或del my_list[1]
- 列表长度:
len(my_list)
- 列表切片:
my_list[1:3]
示例:
python
my_list = [1, 2, 3, 4, 5]
print(my_list[0]) # 输出: 1
my_list.append(6)
print(my_list) # 输出: [1, 2, 3, 4, 5, 6]
2. 字典(Dictionary)
特点:
- 无序集合
- 可变
- 键值对
key-value
结构- 键必须是唯一且不可变的(如字符串、数字、元组)
- 使用花括号
{}
定义
操作:
- 创建字典:
my_dict = {'a': 1, 'b': 2}
- 访问元素:
my_dict['a']
- 修改元素:
my_dict['a'] = 10
- 添加元素:
my_dict['c'] = 3
- 删除元素:
del my_dict['b']
- 字典长度:
len(my_dict)
- 获取所有键:
my_dict.keys()
- 获取所有值:
my_dict.values()
示例:
python
my_dict = {'a': 1, 'b': 2, 'c': 3}
print(my_dict['a']) # 输出: 1
my_dict['d'] = 4
print(my_dict) # 输出: {'a': 1, 'b': 2, 'c': 3, 'd': 4}
3. 元组(Tuple)
特点:
- 有序集合
- 不可变(创建后不能修改)
- 支持重复元素
- 使用小括号
()
定义
操作:
- 创建元组:
my_tuple = (1, 2, 3)
- 访问元素:
my_tuple[0]
- 元组长度:
len(my_tuple)
- 元组切片:
my_tuple[1:3]
示例:
python
my_tuple = (1, 2, 3, 4, 5)
print(my_tuple[0]) # 输出: 1
print(len(my_tuple)) # 输出: 5
4. 集合(Set)
特点:
- 无序集合
- 可变
- 不允许重复元素
- 使用花括号
{}
或set()
定义
操作:
- 创建集合:
my_set = {1, 2, 3}
或my_set = set([1, 2, 3])
- 添加元素:
my_set.add(4)
- 删除元素:
my_set.remove(3)
- 集合长度:
len(my_set)
- 集合运算:并集
|
,交集&
,差集-
,对称差集^
示例:
python
my_set = {1, 2, 3}
print(my_set) # 输出: {1, 2, 3}
my_set.add(4)
print(my_set) # 输出: {1, 2, 3, 4}
other_set = {3, 4, 5}
print(my_set & other_set) # 输出: {3, 4}(交集)
5. 比较
- 列表:用于有序的数据集合,适合需要频繁修改内容的场景。
- 字典:用于键值对数据,适合快速查找和更新的场景。
- 元组:用于有序且不可变的数据集合,适合作为键或需要保护数据不被修改的场景。
- 集合:用于无序且独特的数据集合,适合需要快速去重和集合运算的场景。
python代码示例
python
my_list = [1, 2, 3, 4, 5]
print(my_list[0]) # 输出: 1
my_list.append(6)
print(my_list) # 输出: [1, 2, 3, 4, 5, 6]
my_dict = {'a': 1, 'b': 2, 'c': 3}
print(my_dict['a']) # 输出: 1
my_dict['d'] = 4
print(my_dict) # 输出: {'a': 1, 'b': 2, 'c': 3, 'd': 4}
my_tuple = (1, 2, 3, 4, 5)
print(my_tuple[0]) # 输出: 1
print(len(my_tuple)) # 输出: 5
my_set = {1, 2, 3}
print(my_set) # 输出: {1, 2, 3}
my_set.add(4)
print(my_set) # 输出: {1, 2, 3, 4}
other_set = {3, 4, 5}
print(my_set & other_set) # 输出: {3, 4}(交集)
通过理解和掌握这些数据类型及其操作,可以在不同的编程场景中选择合适的数据结构,提高代码的效率和可读性。