携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第5天
承接上一文:python字典浅析(一)
本文主要从字典中键值对的获取使用角度来进行浅析。
键值对的获取
1.通过键获取值
值 = 字典[键]
>>> codes = {‘beijing’: ‘010’, ‘shanghai’: ‘021’}
>>> codes[‘beijing’]
‘010’
注意若键不存在则将抛出 KeyError 异常
>>> codes = {‘beijing’: ‘010’, ‘shanghai’: ‘021’}
>>> codes[‘a’]
Traceback (most recent call last):
File “”, line 1, in
KeyError: ‘a’
2.通过键获取值( get 方法)
如果通过键获取值时不希望 KeyError 异常抛出,可以使用 get 方法,若键不存在,则直接返回 None
值 = 字典.get(键)
>>> codes = {‘beijing’: ‘010’, ‘shanghai’: ‘021’}
>>> codes.get(‘a’)
>>>
返回的 None 代表什么都没有,所以没有任何值显示
也可以给 get 方法传递第二个参数作为默认值,使得键不存在时直接返回默认值
值 = 字典.get(键, 默认值)
>>> codes = {‘beijing’: ‘010’, ‘shanghai’: ‘021’}
>>> codes.get(‘a’, ‘000’)
>>> ‘000’
3.判断字典中是否包含某个键
布尔值 = 键 in 字典
>>> codes = {‘beijing’: ‘010’, ‘shanghai’: ‘021’}
>>> ‘beijing’ in codes
True
>>> ‘guangzhou’ in codes
False
4.获取所有键
键的列表 = 字典.keys()
>>> codes = {‘beijing’: ‘010’, ‘shanghai’: ‘021’}
>>> codes.keys()
dict_keys([‘beijing’, ‘shanghai’])
获取到的所有键是以迭代器的形式存在,在这里我们可以用 list() 函数将迭代器转换为列表
>>> list(codes.keys())
[‘beijing’, ‘shanghai’]
5.获取所有值
值的列表 = 字典.values()
>>> codes = {‘beijing’: ‘010’, ‘shanghai’: ‘021’}
>>> codes.values()
dict_values([‘010’, ‘021’])
获取到的所有值是以迭代器的形式存在,我们用 list() 函数将迭代器转换为列表
>>> list(codes.values())
[‘010’, ‘021’]
6.获取所有键值对的列表
值的列表 = 字典.items()
>>> codes = {‘beijing’: ‘010’, ‘shanghai’: ‘021’}
>>> codes.items()
dict_items([(‘beijing’, ‘010’), (‘shanghai’, ‘021’)])
获取到的所有键值对是以迭代器的形式存在,我们用 list() 函数将迭代器转换为列表
>>> list(codes.items())
[(‘beijing’, ‘010’), (‘shanghai’, ‘021’)]
列表中的每一个元素是都是二元组(即包含两个元素的元组),每个二元组的第一个元素是键,第二个元素是值