天天都有新坑。
坑一:
这次是遍历一组dict对象,其中的key值不规律,有的全有的缺,如果正常读取遇到不存在的key值时就会报错:KeyError
解决方案是用 dict 对象的 get() 方法,dict.get(key,default=None),来判断key值是否存在,不存在的返回None
坑二:
如果原封不动输入
dict.get(key,default=None)
Python会继续报错:TypeError: get() takes no keyword arguments,get()方法不接受关键字参数
原因是Python C-level APIs developed,有部分内置方法实际上没有参数名称,只能通过在指定位置上上传参数,传入名称则无法识别
>>> d = {1: 2}
>>> d.get(0, default=0)
Traceback (most recent call last):File "", line 1, in
TypeError: get() takes no keyword arguments
>>> d.get(0, 0)