例如,如果我有:
def foo(arg1, def_par="yes", *args,**kwargs):
print(arg1,def_par)
for key, value in kwargs.items():
print("{},{}".format(key,value))
for arg in args:
print(arg)
foo("Hello",1,2,smell="funky")
然后解释器输出:
>>Hello 1
>>smell,funky
>>2
有没有一种方法可以创建一个输出,除非由关键字参数显式定义,否则默认参数用于创建输出,例如:
>>Hello Yes
>>smell,funky
>>1
>>2
可以将变量位置参数放在关键字参数之前:
更改:
收件人:
通过此更改,您的代码将输出:
如果出于某种原因您不能或不想更改
foo
的函数签名,您可以使用inspect.signature
获得参数的默认值:相关问题 更多 >
编程相关推荐