2015-11-04 136 views
1

我按照他们的date的文件名在存放每个匹配对的元组列表中排序文件。遍历元组对(python 3.x)列表

print (matching_files) 

output:

[('sample_20140809.csv', 'data_20140809.csv'),('sample_20140806.csv', 'data_20140806.csv'), ('sample_20140801.csv', 'data_20140801.csv') 

问:我如何可以遍历每个元组对?

我想开sample_20140809.csvdata_20140809.csv做一些这些文件,写一个新的文件,并比循环到下一个对等,直到有该文件夹中没有更多对....

是这样的: for a,b in matching_pairs:但什么,我需要做的。如果我只想用一对每个循环...

+0

'的(文件1,文件2):' – thefourtheye

回答

1

你靠近,循环之后你可以打开文件,并使用csv模块创建它们的作家对象:

import csv 
for a,b in matching_pairs: 
    with open(a,'w') as file_obj1,open(b,'w') as file_obj2: 
     spam_writer1=csv.writer(file_obj1,delimiter=',') 
     spam_writer2=csv.writer(file_obj2,delimiter=',') 
     # do stuff 

请注意,您可以将自己的分隔符传递给此处的作者对象,例如,我已将逗号传递为分隔符。

在matching_files了解更多关于CSV模块https://docs.python.org/3/library/csv.html

+0

非常感谢你。这对我的理解有很大的帮助。我仍然不确定如何在这之后回到下一个'matching_pair' –

+1

@PeterS你的意思是*回到下一个matching_pair *?matching_pair是元组列表的名称,因为你正在使用循环它将在每次迭代中得到每一对。 – Kasramvd

+0

好吧,如果这是它应该如何工作的问题,其余的问题在我的'缩进'我猜。非常感谢你 –