我正在编写一个小脚本,其中我调用itertools.product的方式如下:
for p in product(list1,list2,list3):
self.createFile(p)
有没有一种方法可以在不事先知道包括多少列表的情况下调用此函数?谢谢。
for p in product(*lists)
,其中lists
是你想要传递的事物的元组或列表。def func(a,b):
print (a,b)
args=(1,2)
func(*args)
当定义一个函数以允许它接受可变数量的参数时,您可以使用类似的方法:
def func2(*args): #unpacking
print(args) #args is a tuple
func2(1,2) #prints (1, 2)
当然,你可以将splat运算符与可变数量的参数组合使用:
args = (1,2,3)
func2(*args) #prints (1, 2, 3)
*
)来传递和收集未知数量的位置参数。def func(*args):
pass
lis = [1,2,3,4,5]
func(*lis)