【发布时间】:2013-05-07 19:24:40
【问题描述】:
我有两个文本文件。一个有大约 100 行 (A),另一个可能有大约 800 行 (B)。
我希望从 A 中读取一行,然后从 B 中读取所有行,然后打印一行,其中包含来自每个文件的值。
我正在使用 python 的 csv 模块,因为我知道这些文件格式和内容,并且它们都是逗号分隔的值。
我的代码看起来像这样...
import csv
infile1 = r'C:\zData\a.txt'
infile2 = r'C:\zData\b.txt'
csvfile1 = open(infile1, 'r')
myreader1 = csv.DictReader(csvfile1)
csvfile2 = open(infile2, 'r')
myreader2 = csv.DictReader(csvfile2)
for row1 in myreader1:
for row2 in myreader2:
print "GID = " + row1['GID'] + ", ABC = " + row2['ABC']
我怀疑这是一个简单的问题,但由于某种原因,这段代码只读取了外循环的第一行 (infile1) 和内循环的所有行 (infile2)。
我做错了什么?我尝试添加 myreader1.next,但这似乎没有任何影响。
谢谢。
【问题讨论】: