如何同时在两个文件中的行之间进行迭代?

问题描述

Python 2:

使用itertools.izip加入了两个迭代器。

from itertools import izip
for line_from_file_1, line_from_file_2 in izip(open(file_1), open(file_2)):

如果文件长度不相等,请使用izip_longest

在Python 3中,请使用zipzip_longest。另外,使用awith打开文件,这样即使出现错误也可以自动处理关闭

with open(file1name) as file1, open(file2name) as file2:
    for line1, line2 in zip(file1, file2):
        #do stuff

解决方法

我有两个文件,并且我想对两个文件进行逐行操作。(换句话说,每个文件的第一行都与之对应,第二行等等)。现在,我想到了一些稍微麻烦的方法来同时遍历两个文件。
但是 ,这是Python,因此我认为这里有一些语法速记。

换句话说,是否有一些简单的方法可以适应

for line in file:

这样就可以同时从两个文件中提取数据?