pyd中定义的函数
def fun(a, b):
print(a+b)
在使用关键字参数的方式调用该pyd中的函数fun时
fun(a=1, b=2)
出现如下错误
TypeError: fun() takes no keyword arguments
在使用顺序参数的方式调用该pyd中的函数fun时
fun(1, 2)
可以正确运行
3
结论:
在pyd中,函数的参数必须有一个默认值才能在调用该函数中使用关键字参数,否则只能使用按参数顺序给定参数。
进行如下修改,给参数一个默认值
# 修改前
def fun(a, b):
print(a+b)
# 修改后
def fun(a=None, b=None):
print(a+b)
这样就可以使用关键字参数了。
这个问题在issues上的讨论。
网友评论