在下面的函数中,args[i]
应该通过以下方式解压到函数 func 的参数中*
然而在它之前传入的是一个列表。我缺少什么?
def mymap(func, *seq):
args = list(zip(seq))
ret = []
for i in range(len(args)):
print(type(args[i]))
ret.append( func(*args[i]) )
return ret
f = lambda x: x+2
mymap(f, [1,2,3])
The *
打包在函数定义中并在函数调用中解包。
定义一个新函数:
def func1(*args):
print(args)
这个包:
>>> func1(1, 2)
(1, 2)
有两个参数的函数
def func2(a, b):
print(a)
print(b)
可以使用序列来调用*
:
>>> func2(*[1, 2])
1
2
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)