У меня есть два больших (~ 100 ГБ) текстовых файлов, которые нужно повторять одновременно.
Zip хорошо работает для небольших файлов, но я узнал, что он фактически создает список строк из моих двух файлов. Это означает, что каждая строка сохраняется в памяти. Мне не нужно ничего делать с линиями более одного раза.
handle1 = open('filea', 'r'); handle2 = open('fileb', 'r')
for i, j in zip(handle1, handle2):
do something with i and j.
write to an output file.
no need to do anything with i and j after this.
Есть ли альтернатива zip(), которая действует как генератор, который позволит мне перебирать эти два файла без использования > 200 ГБ RAM?