Python基础:字典dict常用内置函数的总结

字典是 Python 中很重要的数据类型,有很多内置函数需要了解。

1.dict.clear

清除字典中所有键值对。

dict = {'a':10, 'b':20, 'c':30}
dict.clear()
print(dict) # {}

2.dict.get

如果键存在于字典中,则返回该键的值。

如果未找到,则返回 None。

指定可选参数之后,未找到返回默认值。

dict = {'a':10, 'b':20, 'c':30}
print(dict.get('c')) # 30
print(dict.get('g')) # None
print(dict.get('g', -1)) # -1 指定可选参数

3.dict.items

返回字典中的键值对列表。

items() 返回包含键值对的元组列表。

每个元组中的第一项是键,第二项是键的值。

'''
学习中遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
dict = {'a':10, 'b':20, 'c':30}
dict.items() # dict_items([('a', 10), ('b', 20), ('c', 30)])
list(dict.items()) # [('a', 10), ('b', 20), ('c', 30)]
list(dict.items())[1] # ('b', 20)
list(dict.items())[1][0] # 'b'

4.dict.keys

返回字典中的键列表。

dict = {'a':10, 'b':20, 'c':30}
dict.keys() # dict_keys(['a', 'b', 'c'])
list(dict.keys()) # ['a', 'b', 'c']

5.dict.values

返回字典中的值列表。

dict = {'a':10, 'b':20, 'c':30}
dict.values() # dict_values([10, 20, 30])
list(dict.values()) # [10, 20, 30]

# 即使值重复,也会被多次返回
dict2 = {'a':10, 'b':10, 'c':30}
list(dict2.values()) # [10, 10, 30]

6.dict.pop

从字典中删除一个键,如果它存在,并返回它的值。

如果不存在,则引发异常 KeyError。

指定可选参数,不存在时返回默认值,不引发异常。

dict = {'a':10, 'b':20, 'c':30}
dict.pop('b') # 20
print(dict) # {'a': 10, 'c': 30}
dict.pop('g')
'''
Traceback (most recent call last):

  File "", line 1, in 
    dict.pop('g')

KeyError: 'g'
'''
dict.pop('g', -1) # -1

7.dict.popitem

从字典中删除最后面的键值对,并返回。

直到字典被删除至空,则引发异常 KeyError。

'''
学习中遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
dict = {'a':10, 'b':20, 'c':30}
dict.popitem() # ('c', 30)
print(dict) # {'a': 10, 'b': 20}
dict.popitem() # ('b', 20)
print(dict) # {'a': 10}
dict.popitem() # ('a', 10)
print(dict) # {}
dict.popitem()
'''
Traceback (most recent call last):

  File "", line 1, in 
    dict.popitem()

KeyError: 'popitem(): dictionary is empty'
'''

注意:在低于 3.6 的 Python 版本中,popitem( ) 将返回任意(随机)键值对,因为 Python 字典在 3.6 版本之前是无序的。

8.dict.update

将字典与另一个字典或可迭代的键值对合并。

dict = {'a':10, 'b':20, 'c':30}
dict2 = {'b':200, 'd':400}
dict.update(dict2)
print(dict) # {'a': 10, 'b': 200, 'c': 30, 'd': 400}

所有的值都被更新。

你可能感兴趣的:(python)