列表列表中的Python函数参数

2024-10-05 14:21:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个功能:

def func(a,b,c,d,e,f,g):
    do something using the paramters

我想运行函数func,方法是在一个循环中使用param1和{}等等。在

我有一个列表中的参数,比如:

^{pr2}$

我试过了

main_list = [param1,param2,....,param8]

for a in main_list:
    func(a)

但这似乎行不通!在

编辑:

我的函数包含7个参数,我必须循环8次,我有8个这样不同的参数列表-


Tags: the方法函数功能列表参数maindef
3条回答

这正是你所要求的:

def func(a,b,c,d,e,f,g):
    pass

param1 = [1,2,3,4,5,6,7]
param2 = [11,21,31,41,51,61,71]

main_list = [param1, param2]

for a in main_list:
    func(*a)

这就是你想要的:

def func(*vargs):
    for a in vargs:
       print a


func(*[1,2,3])
1
2

即)

^{pr2}$

编辑

a,g,e=10,40,50

def func(a,b,c):
   print a,b,c


func(*[a,g,e])
10 40 50

3

使用*args语法:

for params in [param1, param2, param3, ...]:
    func(*params)

*params语法随后将序列扩展为函数的单独参数。当然,要确保位置参数的数量与函数所期望的相匹配。在

演示:

^{pr2}$

相关问题 更多 >