目录
列表 (List)
- 有序:列表中的元素是有序的,可以通过索引访问。
- 可变:你可以修改列表,比如添加、删除或改变元素。
- 可重复:列表可以包含重复的元素。
- 语法:使用方括号
[]
定义,元素用逗号分隔。 - 应用场景:
- 当你有一个元素的集合,并且可能需要修改这些元素时,使用列表。列表非常灵活,可以进行增加、删除、排序和搜索操作。
- 列表推导式为快速生成和操作列表提供了便利。
- 列表适用于存储有序的数据集合,特别是当数据集合需要频繁修改时。
- 示例:
my_list = [1, 2, 2, 3] my_list.append(4) # 添加元素 print(my_list) # 输出: [1, 2, 2, 3, 4]
元组 (Tuple)
- 有序:和列表一样,元组中的元素是有序的。
- 不可变:一旦创建,元组中的元素不能被修改。
- 可重复:元组可以包含重复的元素。
- 语法:使用圆括号
()
定义,元素用逗号分隔。 - 应用场景:
- 元组应用于存储不可变的元素序列。由于它是不可变的,元组可以作为字典键或集合的元素,而列表则不行。
- 如果你有一组数据,不希望在程序中被修改,比如配置参数等,元组是理想的选择。
- 元组通常用于函数返回多个值的场景。
- 示例:
my_tuple = (1, 2, 2, 3) # 尝试修改元组会引发错误 # my_tuple[1] = 3 # TypeError print(my_tuple) # 输出: (1, 2, 2, 3)
字典 (Dictionary)
- 无序:在 Python 3.7 以前,字典是无序的;从 Python 3.7 开始,字典维护插入时的顺序。
- 可变:字典可以修改,可以添加新的键值对或改变现有的键值对。
- 键唯一:每个键值对的键必须是唯一的,但值可以重复。
- 语法:使用花括号
{}
定义,每个元素是一个键值对,键和值用冒号分隔,元素之间用逗号分隔。 - 应用场景:
- 当你需要将键映射到值时,字典是首选。它允许快速检索、添加、删除和修改键值对。
- 字典适用于存储可能随时间增长或缩小的数据结构,例如,表示真实世界对象的属性或其他动态数据集。
- 字典也常用于缓存数据(例如,在 Web 应用中缓存用户的会话信息)。
- 示例:
my_dict = {'key1': 'value1', 'key2': 'value2', 'key3': 'value1'} my_dict['key4'] = 'value4' # 添加新的键值对 print(my_dict) # 输出: {'key1': 'value1', 'key2': 'value2', 'key3': 'value1', 'key4': 'value4'}
集合 (Set)
- 无序:集合中的元素是无序的,不能通过索引访问。
- 可变:可以添加或删除元素,但不能更改已存在的元素。
- 元素唯一:集合中的元素必须是唯一的,不允许重复。
- 语法:使用花括号
{}
定义,但是只有值,没有键。 - 应用场景:
- 当你需要确保元素唯一时,使用集合。集合自动去重,只存储唯一的项。
- 如果你需要进行数学上的集合操作,如并集、交集、差集等,集合非常有用。
- 集合也适用于检查成员资格,判断某个元素是否存在于某个集合中,操作比列表更高效。
- 示例:
my_set = {1, 2, 3, 4, 5} my_set.add(6) # 添加元素 print(my_set) # 输出: {1, 2, 3, 4, 5, 6} my_set.add(3) # 尝试添加重复元素 print(my_set) # 输出不变,因为3已存在: {1, 2, 3, 4, 5, 6}