python – 同时逐行读取两个文本文件

我有两种不同语言的文本文件,它们是逐行对齐的.即textfile1中的第一行对应于textfile2中的第一行,依此类推.

有没有办法同时逐行读取这两个文件?

下面是文件应该如何显示的示例,假设每个文件的行数大约为1,000,000.

textfile1:

This is a the first line in English
This is a the 2nd line in English
This is a the third line in English

textfile2:

C'est la première ligne en Français
C'est la deuxième ligne en Français
C'est la troisième ligne en Français

期望的输出

This is a the first line in English\tC'est la première ligne en Français
This is a the 2nd line in English\tC'est la deuxième ligne en Français
This is a the third line in English\tC'est la troisième ligne en Français

这个Read two textfile line by line simultaneously -java的Java版本,但Python不使用逐行读取的bufferedreader.那怎么办呢?

解决方法:

from itertools import izip

with open("textfile1") as textfile1, open("textfile2") as textfile2: 
    for x, y in izip(textfile1, textfile2):
        x = x.strip()
        y = y.strip()
        print("{0}\t{1}".format(x, y))

在Python 3中,将itertools.izip替换为内置zip.

上一篇:在Python中读取输入的最快方法


下一篇:[UVA11383] Golden Tiger Claw