解决方法
dict
的get("key", 0)
方法不要添加default=
,删除这个写法并不影响使用逻辑,但是加上会导致报错。
d = {
'key': 2,
}
print(d.get("key", 0))
问题解析
如果使用下面的代码就会报错TypeError: get() takes no keyword arguments
d = {
'key': 2,
}
print(d.get("key", default=0))
原因是因为Python底层由C来写,调用底层C语言在编译时无法解析这个参数的名称,而目前Python的底层设计无法解决这个问题,所以直接传入参数即可,不要加入default=
,这里语法没问题。