为了账号安全,请及时绑定邮箱和手机立即绑定

如何将列表的所有元素转移到要求* args的函数中?

如何将列表的所有元素转移到要求* args的函数中?

炎炎设计 2021-03-16 10:19:52
我正在用head调用第三方函数def foo(*args),因此通常我可以以这种方式使用它foo(a,b,c)。但是,现在我有一个清单li = [a,b,c]。我不知道它有多少元素,直到运行时。如何将列表的所有元素foo作为参数传送到函数中。我尝试了foo(li)和foo(tuple(li)),但是它们不起作用。请帮忙。
查看完整描述

2 回答

?
繁星淼淼

TA贡献1775条经验 获得超11个赞

使用*而调用该函数,*用于拆包函数调用期间的序列为单独的位置参数:


foo(*li)

演示:


>>> def foo(*args): print (args)

>>> foo(*range(10))

(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)


查看完整回答
反对 回复 2021-03-23
?
鸿蒙传说

TA贡献1865条经验 获得超7个赞

尝试通过之前传递li一个*,如foo(*li):


li = [1, 2, 3, 4, 5]

foo(*li)

例如:


>>> def f(*args):

...     print args

...

>>> li = [1,2,3]

>>> f(*li)

(1, 2, 3)


查看完整回答
反对 回复 2021-03-23
  • 2 回答
  • 0 关注
  • 218 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信