如何从两个列表中获取值一次

时间:2015-01-03 07:34:30

标签: python list function parameter-passing

我有两个列表:一个包含文件名和相应文件名的其他时间戳。

这是我的代码:

for afile in filelist:
    for times in timestamps:
        self.importFiles(afile,times)

但是这段代码会调用该函数为同一个文件打印不同的时间戳。

3 个答案:

答案 0 :(得分:2)

Pythonic方式,使用zip函数:

for afile, timestamp in zip(filelist, timestamps):
    self.importFiles(afile,timestamp)

答案 1 :(得分:0)

您正在使用嵌套for循环。因此,对于每个文件名,将打印所有时间戳。使用单个for循环。

length = len(filelist)
for i in range(length):
   self.importFiles(filelist[i],timestamps[i])

答案 2 :(得分:0)

您可以使用enumerate

for i, file in enumerate(filelist):
    self.importFiles(file,timestamps[i])

这将导致i成为索引并归档文件列表的相应条目。