记录一个python 不能使用键值队参数的问题

今天在项目中,遇到了一个python不能使用键值对传参的问题,看下面代码示例:

def test(name):
    print(name)

正常我们调用可以

1. test("evan")
2. test(name="evan")

两种方式都是可以的 ,但是像python的一些内置函数,他底层调用的是C的API, 是不支持使用键值对作为参数传递的,例如

a = {}
a.get("name",default=None)

使用default= 参数就会报错 TypeError: get() takes no keyword arguments。
使用位置参数传递是可以的

a = {}
a.get("name",None)

结论: 在开发过程中遇到python内置函数,使用键值对进行参数传递需要谨慎测试。

上一篇:python 性能分析利器 py-spy


下一篇:250万用户敏感信息泄露,Xbox和Playstation论坛已经没有隐私了