zip() alternative for iterating through two iterables
itertools
has a function izip
that does that
from itertools import izip
for i, j in izip(handle1, handle2):
...
If the files are of different sizes you may use izip_longest
, as izip
will stop at the smaller file.
You can use izip_longest like this to pad the shorter file with empty lines
in python 2.6
from itertools import izip_longest
with handle1 as open('filea', 'r'):
with handle2 as open('fileb', 'r'):
for i, j in izip_longest(handle1, handle2, fillvalue=""):
...
or in Python 3+
from itertools import zip_longest
with handle1 as open('filea', 'r'), handle2 as open('fileb', 'r'):
for i, j in zip_longest(handle1, handle2, fillvalue=""):
...