调用函数时将列表转换为 *args
在 Python 中,如何将列表转换为 *args
?
我需要知道,因为该函数
scikits.timeseries.lib.reportlib.Report.__init__(*args)
需要多个 time_series 对象作为 *args
传递,而我有一个 timeseries 对象列表。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您可以在可迭代对象之前使用
*
运算符,以在函数调用中扩展它。例如:(注意
timeseries_list
之前的*
)来自 Python 文档:
python 教程中标题为 解包参数的部分也对此进行了介绍列表,其中还展示了如何使用
**
运算符对关键字参数的字典执行类似的操作。You can use the
*
operator before an iterable to expand it within the function call. For example:(notice the
*
beforetimeseries_list
)From the python documentation:
This is also covered in the python tutorial, in a section titled Unpacking argument lists, where it also shows how to do a similar thing with dictionaries for keyword arguments with the
**
operator.是的,使用 *arg 将 args 传递给函数将使 python 解压 arg 中的值并将其传递给函数。
所以:
yes, using *arg passing args to a function will make python unpack the values in arg and pass it to the function.
so:
*args
只是意味着该函数接受多个参数,通常类型相同。请查看 Python 教程中的本节了解更多信息。
*args
just means that the function takes a number of arguments, generally of the same type.Check out this section in the Python tutorial for more info.