【发布时间】:2018-01-31 22:09:15
【问题描述】:
我有 2 个包含数据的文本文件,我想要一个循环,它同时遍历每个文本文件的第一行,然后是第二行,然后是第三行。所以我对它们都使用了一个内部“for”循环,但它并没有像我想要的那样循环,而是循环第一个文本文件的第一行,第二个文本文件中的所有行,然后第一个文件的第二行,所有来自第二个文件的行。
我已经尝试了所有方法,但没有任何效果。如果我使用如下所示的 break 语句,它将开始使用第一个文本文件的所有行与第二个文本文件的第一行相同,但如果我删除该 break 语句,那么它将选择相同第一个文本文件的第一行,但包含第二个文本文件的所有行。
这是我的代码:
fi =open("C:\\Users\\file1.txt","r")
file1 = fi.read().splitlines()
fi2 = open("C:\\Users\\file2.txt","r")
file2 = fi2.read().splitlines()
for file1_data in file1:
for file2_data in file2:
try:
print(file1_data)
print(file2_data)
except:
print("exit")
break
【问题讨论】:
-
zip文件迭代器一起...另外,在使用大文件时尽量避免read().splitlines().. 你可以这样做for line in file1 -
也在这里更一般地回答stackoverflow.com/questions/21248122/…
-
谢谢你们,非常感谢。它通过使用zip方法工作,你们真的很棒。
标签: python python-3.x for-loop