Python中字典相关的常见函数有哪些?
Python中字典是一种非常常见的数据类型,它由键值对(key-value pairs)组成,其中键(key)是 的,值(value)则可以重复。字典提供了快速查找、添加、删除和更新键值对的功能,因此在实际开发中使用频率很高。下面是Python中字典相关的一些常见函数。
1. dict():创建一个空字典或从其他序列(元组、列表等)创建字典。
# 创建空字典
empty_dict = dict()
# 从元组、列表等创建字典
t = [('key1', 1), ('key2', 2), ('key3', 3)]
d1 = dict(t)
l = [['key1', 1], ['key2', 2], ['key3', 3]]
d2 = dict(l)
2. x in d:判断键x是否在字典d中。
# 判断键是否存在
d = {'key1': 1, 'key2': 2, 'key3': 3}
print('key1' in d) # True
print('key4' in d) # False
3. d[key]:获取键为key的值,如果key不存在则会抛出KeyError异常。
# 获取键的值
d = {'key1': 1, 'key2': 2, 'key3': 3}
print(d['key1']) # 1
print(d['key4']) # KeyError: 'key4'
4. d.get(key, default=None):获取键为key的值,如果key不存在则返回default值。
# 获取键的值,不存在返回默认值
d = {'key1': 1, 'key2': 2, 'key3': 3}
print(d.get('key1', 'default')) # 1
print(d.get('key4', 'default')) # default
5. d.keys():返回字典d中所有键的列表。
# 获取所有键
d = {'key1': 1, 'key2': 2, 'key3': 3}
print(d.keys()) # dict_keys(['key1', 'key2', 'key3'])
6. d.values():返回字典d中所有值的列表。
# 获取所有值
d = {'key1': 1, 'key2': 2, 'key3': 3}
print(d.values()) # dict_values([1, 2, 3])
7. d.items():返回字典d中所有键值对的元组组成的列表。
# 获取所有键值对
d = {'key1': 1, 'key2': 2, 'key3': 3}
print(d.items()) # dict_items([('key1', 1), ('key2', 2), ('key3', 3)])
8. len(d):返回字典d中键值对的数量。
# 获取字典长度
d = {'key1': 1, 'key2': 2, 'key3': 3}
print(len(d)) # 3
9. d.update(other_dict):将其他字典other_dict中的键值对更新到字典d中,如果other_dict中的键在d中已经存在,则会覆盖d中键的值;如果不存在,则会添加一个新的键值对。
# 更新字典
d1 = {'key1': 1, 'key2': 2, 'key3': 3}
d2 = {'key2': 'two', 'key4': 4}
d1.update(d2)
print(d1) # {'key1': 1, 'key2': 'two', 'key3': 3, 'key4': 4}
10. d.pop(key, default=None):删除字典d中键为key的键值对,如果key不存在则返回default值,如果default值未指定,则会抛出KeyError异常。
# 删除键
d = {'key1': 1, 'key2': 2, 'key3': 3}
print(d.pop('key2')) # 2
print(d) # {'key1': 1, 'key3': 3}
print(d.pop('key4', 'default')) # default
11. d.clear():清空字典d中所有的键值对。
# 清空字典
d = {'key1': 1, 'key2': 2, 'key3': 3}
d.clear()
print(d) # {}
12. d.fromkeys(iterable, value=None):创建一个新的字典,其键来自于iterable,值全部为value,如果value未指定,则值为None。
# 创建新字典
keys = ['key1', 'key2', 'key3']
value = 'value'
d = dict.fromkeys(keys, value)
print(d) # {'key1': 'value', 'key2': 'value', 'key3': 'value'}
13. d.setdefault(key, default=None):获取键为key的值,如果key不存在则会添加一个新的键为key,值为default的键值对,如果default未指定,则默认值为None。
# 设置默认值
d = {'key1': 1, 'key2': 2, 'key3': 3}
print(d.setdefault('key4', 'default')) # default
print(d) # {'key1': 1, 'key2': 2, 'key3': 3, 'key4': 'default'}
print(d.setdefault('key1', 'default')) # 1
print(d) # {'key1': 1, 'key2': 2, 'key3': 3, 'key4': 'default'}
14. d.copy():复制字典d中所有键值对,返回一个新的字典。
# 复制字典
d1 = {'key1': 1, 'key2': 2, 'key3': 3}
d2 = d1.copy()
print(d2) # {'key1': 1, 'key2': 2, 'key3': 3}
以上就是Python中字典相关的一些常见函数。字典有很多高级用法,但是基本的函数已经可以满足很多实际需求了。在实际开发中,多用Python的标准库,少造轮子,可以大大提高效率。
