此问题在此处已有答案:
Expanding tuples into arguments(6个答案)
5个月前关闭。
在一个需要一个列表项的函数中,我如何传递一个Python列表项而不出错呢?
my_list = ['red', 'blue', 'orange']
function_that_needs_strings('red', 'blue', 'orange') # works!
function_that_needs_strings(my_list) # breaks!
当然,一定有一种方法可以扩展列表,并传递函数'red','blue','orange'
。我认为这叫做“解包”。
3条答案
按热度按时间jdgnovmf1#
您可以在这里阅读所有相关信息:解包参数列表-Python教程
i2byvkas2#
可以,您可以使用
*args
(splat)语法:其中
my_list
可以是任何可迭代的; Python将在给定的对象上循环,并将每个元素用作函数的单独参数。请参阅调用表达式文档。
还有一个等效的关键字参数,使用两颗星:
并且有equivalent syntax用于在函数签名中指定捕获所有参数:
liwlm1x93#
从Python 3.5开始,你可以解包无限数量的
list
。PEP 448 -其他拆包概括
因此,这将起作用: