将多个列表的多个元素传递给python中的函数

时间:2015-01-11 18:30:53

标签: python list for-loop

如何将多个元素传递给另一个名为testResults()的函数:

elem1 =  map(int, result[2])
elem2 = map(int, result[3])
length = len(elem1)

testResults(elem1[0],elem2[0])然后testResults(elem1[1],elem2[1]) ...到testResults(elem1[length],elem2[length])

函数testResults参数定义如下:

def testResults(num, place, code='test'):
    ....

3 个答案:

答案 0 :(得分:1)

zip内置似乎是你想要的:

for num, place in zip(elem1, elem2):
    testResults(num, place)

答案 1 :(得分:0)

您可以使用zip:作为Alex提供的解决方案

for num, place in zip(elem1, elem2):
    testResults(num, place)

或者您可以使用这种简单的方法:

for i in range(len(elem1)):
    testResults(elem1[i], elem2[i])

答案 2 :(得分:0)

与Alex Martelli(显然更具可读性)解决方案类似,您可以使用zip*来解压缩元组并将每个元组元素传递给函数:

for pair in zip(elem1, elem2):
    testResults(*pair) # unpack pair here