Python字典函数详细解读
Python中,字典是一种用于存储键-值对的数据结构,可以快速地查找和访问数据。Python提供了许多内置的字典函数,本文将对其中较为常用的函数进行详细解读。
一、创建字典函数
1. dict()
dict()函数用于创建一个字典,其参数可以是一个键值对序列、关键字参数或者其他字典。例如:
创建空字典:d = dict()
使用序列创建:d = dict([(1,'a'),(2,'b'),(3,'c')])
使用关键字参数创建:d = dict(name='Tom', age=25)
使用其他字典创建:d = dict({'name':'Tom', 'age':25})
2. defaultdict()
defaultdict()函数也可以用于创建字典,与dict()不同的是,它可以指定默认值类型。如果访问字典中不存在的键,则会返回指定类型的默认值。例如:
from collections import defaultdict
d = defaultdict(int)
d['a'] = 1
d['b'] # 返回默认值0
d = defaultdict(list)
d['a'].append(1)
d['b'] # 返回默认值[]
d = defaultdict(lambda: 'unknown')
d['a'] = 'apple'
d['b'] # 返回默认值'unknown'
二、访问字典函数
1. get()
get()函数用于从字典中获取指定键的值,如果该键不存在,则返回默认值(默认为None)而不是抛出KeyError异常。例如:
d = {'a':1, 'b':2, 'c':3}
d.get('a') # 返回1
d.get('d') # 返回None
d.get('d', 0) # 返回0
2. keys()
keys()函数返回字典中所有键组成的列表。例如:
d = {'a':1, 'b':2, 'c':3}
d.keys() # 返回['a', 'b', 'c']
3. values()
values()函数返回字典中所有值组成的列表。例如:
d = {'a':1, 'b':2, 'c':3}
d.values() # 返回[1, 2, 3]
4. items()
items()函数返回字典中所有键值对组成的元组列表。例如:
d = {'a':1, 'b':2, 'c':3}
d.items() # 返回[('a', 1), ('b', 2), ('c', 3)]
5. pop()
pop()函数用于从字典中删除指定键,并返回该键对应的值。如果该键不存在,则会抛出KeyError异常。例如:
d = {'a':1, 'b':2, 'c':3}
d.pop('b') # 返回2,原字典中删除了键值对('b',2)
三、修改字典函数
1. update()
update()函数用于将一个字典中的键值对更新到另一个字典中。如果键重复,则会用新的值覆盖旧的值。例如:
d1 = {'a':1, 'b':2}
d2 = {'b':3, 'c':4}
d1.update(d2)
d1 # 返回{'a':1, 'b':3, 'c':4}
2. setdefault()
setdefault()函数用于向字典中添加键值对,如果指定的键不存在,则会输出默认值并将其添加到字典中。如果键已经存在,则不会进行任何操作。例如:
d = {'a':1, 'b':2}
d.setdefault('c', 3) # 添加键值对('c', 3),返回3
d.setdefault('a', 5) # 不进行任何操作,返回1
四、其他字典函数
1. clear()
clear()函数用于清空字典中所有的键值对。例如:
d = {'a':1, 'b':2, 'c':3}
d.clear() # 清空字典,返回{}
2. copy()
copy()函数用于复制一个字典,返回一个新的字典对象。例如:
d = {'a':1, 'b':2, 'c':3}
d_copy = d.copy()
d_copy # 返回{'a':1, 'b':2, 'c':3}
3. len()
len()函数用于获取字典中键值对的数量。例如:
d = {'a':1, 'b':2, 'c':3}
len(d) # 返回3
以上就是Python中常用的字典函数的详细解读,读者可以按需使用。需要注意的是,字典和列表一样,也可以使用for循环遍历,以及通过判断键是否存在、值是否相等等方式进行判断、查找、删除等操作。
