所以我有这个概念的困难*args和**kwargs.
到目前为止,我已经了解到:
*args =参数列表 - 作为位置参数**kwargs = dictionary - 其键成为单独的关键字参数,值成为这些参数的值.我不明白这会对哪些编程任务有所帮助.
也许:
我想输入列表和字典作为函数AND的参数同时作为通配符,所以我可以传递任何参数?
有一个简单的例子来说明如何*args和**kwargs使用?
我发现的教程也使用了"*"和变量名.
是*args和**kwargs刚才占位符或者你使用完全相同*args,并**kwargs在代码中?
有没有办法将Python元组扩展为函数 - 作为实际参数?
例如,这里expand()有魔力:
some_tuple = (1, "foo", "bar")
def myfun(number, str1, str2):
return (number * 2, str1 + str2, str2 + str1)
myfun(expand(some_tuple)) # (2, "foobar", "barfoo")
Run Code Online (Sandbox Code Playgroud)
我知道可以定义myfun为myfun((a, b, c)),但当然可能有遗留代码.谢谢
我一直在寻找将Python倾向于调用它们的数组或列表传递给函数.
我读了一些关于使用*args的内容,例如:
def someFunc(*args)
for x in args
print x
Run Code Online (Sandbox Code Playgroud)
但不确定这是对还是错.似乎没有什么能像我想的那样工作.我习惯于能够轻松地将数组传递给PHP函数,这让我感到困惑.我似乎也做不到这个:
def someFunc(*args, someString)
Run Code Online (Sandbox Code Playgroud)
因为它引发了一个错误.
我想我只是让自己完全糊涂了,并且正在找人为我清理它.