在之前博文中,已经介绍过字典的遍历方法,为什么要写这篇博文呢?是因为当我们试图访问一个字典中不存在的键时,可能发生意外,这篇博文主要介绍get方法如何优雅的处理这种问题。
目录
首先,创建一个字典
dicts = dict([('张三',25), ('李四',20), ('王洼',18)])
先看下产生的报错的情况:我们访问了一个不存在的key
dicts['周周']
报错:
Traceback (most recent call last):
File "C:\ProgramData\Anaconda3\lib\site-packages\IPython\core\interactiveshell.py", line 3325, in run_code
exec(code_obj, self.user_global_ns, self.user_ns)
File "<ipython-input-45-ceaed99a3448>", line 1, in <module>
dicts['周周']
KeyError: '周周'
1.if-else方式
if '周周' in dicts:
result = dicts['周周']
else :
result = 'NULL'
结果:
'NULL'
2.三元表达式
result = dicts['周周'] if '周周' in dicts else 'NULL'
结果:
'NULL'
3.get()方式
result1 = dicts.get('周周','NULL')
result2 = dicts.get('张三','NULL')
结果:
'NULL'#结果1
25#结果2
从上面过程是不是可以看出get方式的优势呢?
以上,只是我在使用过程中,一点小小的总结,欢迎大家补充~