File49. Даны четыре файла целых чисел разного размера с именами SA, SB, SC, SD и строка SE. Создать новый файл с именем SE, в котором чередовались бы элементы исходных файлов с одним и тем же номером (как в задании File48). «Лишние» элементы более длинных файлов в результирующий файл не записывать.

Решение на Python 3:

# -*- coding: utf-8 -*-
import sys

lst_file = ["file49_1.txt", "file49_2.txt", "file49_3.txt", "file49_4.txt"]
f_output = "file49_all.txt"

try:
f_in = []
for f_input in lst_file:
f_in.append(open(f_input, "r"))

flag = True
with open(f_output, "w") as f_out:
while flag:
for f in f_in:
line = f.readline()
if not line:
flag = False
break
print(line)
f_out.write(line.strip()+"\n")

for f in f_in:
f.close()

except:
print("Error: ", sys.exc_info())