欢迎访问宙启技术站
智能推送

Python字典函数详细解读

发布时间:2023-06-11 10:59:11

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循环遍历,以及通过判断键是否存在、值是否相等等方式进行判断、查找、删除等操作。