python字典中的各种方法讲解
时间: 2023-12-29 09:51:50 浏览: 65
Python中的字典(dictionary)是一种无序、可变、可迭代的数据类型,用于存储键值对。字典中的键必须是唯一的,而值则不必唯一。Python字典中有很多有用的方法,以下是一些常用的方法:
1. `clear()`: 清空字典中的所有元素
2. `copy()`: 返回一个字典的浅拷贝
3. `fromkeys(iterable, value=None)`: 创建一个新的字典,使用可迭代对象中的每个元素作为键,并将它们的值设置为 value。如果未指定 value,则默认为 None。
4. `get(key[, default])`: 返回指定键的值,如果键不存在于字典中,则返回默认值。
5. `items()`: 返回一个包含所有字典项的列表,其中每个元素都是一个 (key, value) 对。
6. `keys()`: 返回一个包含所有键的列表。
7. `pop(key[, default])`: 如果 key 存在,则删除并返回字典中指定 key 对应的值,否则返回默认值。如果未指定默认值,则在 key 不存在时引发 KeyError 异常。
8. `popitem()`: 随机返回并删除字典中的一对键和值,如果字典为空,则抛出 KeyError 异常。
9. `setdefault(key[, default])`: 如果 key 存在,则返回其值,如果不存在,则将 key 插入字典中,并将其值设置为默认值。如果未指定默认值,则默认为 None。
10. `update([other])`: 将其他字典或键值对序列的键值对添加到字典中。
11. `values()`: 返回一个包含所有值的列表。
示例:
```python
# 创建一个字典
dict1 = {"name": "Alice", "age": 20, "gender": "female"}
# 1. clear()
dict1.clear()
print(dict1) # {}
# 2. copy()
dict2 = dict1.copy()
print(dict2) # {}
# 3. fromkeys()
dict3 = dict.fromkeys(['name', 'age', 'gender'], 'unknown')
print(dict3) # {'name': 'unknown', 'age': 'unknown', 'gender': 'unknown'}
# 4. get()
print(dict1.get('name', 'unknown')) # unknown
# 5. items()
print(dict2.items()) # []
# 6. keys()
print(dict3.keys()) # dict_keys(['name', 'age', 'gender'])
# 7. pop()
print(dict1.pop('name', 'unknown')) # unknown
# 8. popitem()
print(dict2.popitem()) # KeyError: 'popitem(): dictionary is empty'
# 9. setdefault()
print(dict1.setdefault('name', 'unknown')) # unknown
# 10. update()
dict1.update({'name': 'Bob', 'age': 30})
print(dict1) # {'name': 'Bob', 'age': 30, 'gender': 'female'}
# 11. values()
print(dict1.values()) # dict_values(['Bob', 30, 'female'])
```
阅读全文