存储方式
- 集合(set):集合是无序的,它以哈希表为基础存储元素,每个元素通过哈希值来确定存储位置。集合只存储元素本身,不存储与元素相关的额外信息。
- 字典(dict):字典也是基于哈希表存储数据,但它存储的是键值对(key - value)。每个键通过哈希值确定存储位置,值与键相关联存储。
元素唯一性
- 集合(set):集合中的元素具有唯一性,即集合中不会出现重复的元素。当添加已存在的元素时,集合不会发生变化。
- 字典(dict):字典中的键具有唯一性,不能有重复的键。但值可以重复,不同的键可以对应相同的值。
访问方式
- 集合(set):集合本身是无序的,不能通过索引来访问元素。通常用于检查元素是否存在(使用
in
关键字)、进行集合运算(如并集、交集、差集等)。
- 字典(dict):字典通过键来访问对应的值。只要知道键,就可以快速获取对应的值。
使用示例
集合(set)示例
# 创建集合
s = {1, 2, 3, 3} # 重复的3不会被添加
print(s) # 输出: {1, 2, 3}
# 检查元素是否在集合中
print(2 in s) # 输出: True
# 集合运算
s1 = {1, 2, 3}
s2 = {3, 4, 5}
union_set = s1.union(s2) # 并集
print(union_set) # 输出: {1, 2, 3, 4, 5}
字典(dict)示例
# 创建字典
d = {'name': 'Alice', 'age': 25}
# 通过键访问值
print(d['name']) # 输出: Alice
# 添加或修改键值对
d['city'] = 'New York'
print(d) # 输出: {'name': 'Alice', 'age': 25, 'city': 'New York'}