1. 字典(dict
)
字典是一个无序的键值对集合,每个键对应一个值。
字典的增、删、改、查:
-
添加键值对:
my_dict = {'a': 1, 'b': 2} my_dict['c'] = 3 # 添加新键'c',值为3 print(my_dict) # 输出:{'a': 1, 'b': 2, 'c': 3}
-
修改值:
my_dict['b'] = 5 # 修改键'b'对应的值 print(my_dict) # 输出:{'a': 1, 'b': 5, 'c': 3}
-
删除键值对:
del my_dict['a'] # 删除键'a'及其对应的值 print(my_dict) # 输出:{'b': 5, 'c': 3}
-
查找值:
value = my_dict.get('b') # 获取键'b'对应的值 print(value) # 输出:5
如果键不存在,可以指定默认值:
value = my_dict.get('d', 'Not Found') # 'd' 不存在,返回 'Not Found' print(value) # 输出:Not Found
字典遍历:
-
遍历键值对:
for key, value in my_dict.items(): print(key, value) # 输出: # b 5 # c 3
-
只遍历键:
for key in my_dict.keys(): print(key) # 输出: # b # c
-
只遍历值:
for value in my_dict.values(): print(value) # 输出: # 5 # 3
2. 元组(tuple
)
元组是不可变的有序集合,创建后不能修改内容。
访问元组:
-
索引访问:
my_tuple = (1, 2, 3, 4) print(my_tuple[1]) # 输出:2
-
切片访问:
print(my_tuple[1:3]) # 输出:(2, 3)
修改元组:
元组是不可变的,不能修改其中的元素。即不能通过索引修改值:
# 以下代码会抛出 TypeError
# my_tuple[1] = 5
不过,你可以通过重新创建元组来“修改”其内容:
my_tuple = (1, 2, 3, 4)
new_tuple = my_tuple[:2] + (5,) + my_tuple[3:]
print(new_tuple) # 输出:(1, 2, 5, 4)
3. 集合(set
)
集合是一个无序且不重复的元素集合,常用于去重。
创建集合:
my_set = {1, 2, 3, 4}
print(my_set) # 输出:{1, 2, 3, 4}
集合的增、删、查:
-
添加元素:
my_set.add(5) # 添加单个元素 print(my_set) # 输出:{1, 2, 3, 4, 5}
-
添加多个元素:
my_set.update([6, 7, 8]) # 添加多个元素 print(my_set) # 输出:{1, 2, 3, 4, 5, 6, 7, 8}
-
删除元素:
my_set.remove(5) # 删除元素5,如果不存在会抛出 KeyError print(my_set) # 输出:{1, 2, 3, 4, 6, 7, 8} my_set.discard(10) # 尝试删除不存在的元素,不会抛出错误
-
清空集合:
my_set.clear() # 清空集合 print(my_set) # 输出:set()
集合操作:
-
集合的并集:
set1 = {1, 2, 3} set2 = {3, 4, 5} union_set = set1 | set2 # 或使用 set1.union(set2) print(union_set) # 输出:{1, 2, 3, 4, 5}
-
集合的交集:
intersection_set = set1 & set2 # 或使用 set1.intersection(set2) print(intersection_set) # 输出:{3}
-
集合的差集:
difference_set = set1 - set2 # 或使用 set1.difference(set2) print(difference_set) # 输出:{1, 2}
-
集合的对称差集:
symmetric_difference_set = set1 ^ set2 # 或使用 set1.symmetric_difference(set2) print(symmetric_difference_set) # 输出:{1, 2, 4, 5}
总结:
- 字典用于存储键值对,支持增、删、改、查操作,且可以遍历键、值和键值对。
- 元组是不可变的有序集合,适用于需要保证数据不变的场景。访问方式类似于列表,但不可修改。
- 集合是无序且不重复的元素集合,适用于去重和集合操作,如并集、交集等。