Если вы знаете, что в файле будет только одна пустая строка, вы можете split
содержимое символа двойной новой строки:
with open('input.txt') as f:
contents = f.read()
output1, output2 = contents.split('\n\n')
with open('output1.txt', 'w') as o1:
o1.write(output1)
with open('output2.txt', 'w') as o2:
o2.write(output2)
Еслив вашем файле более одной пустой строки, это не удастся, так как разделение вернет более двух частей и попытается присвоить их только двум именам output1
и output2
.split
можно сказать, чтобы разделить только максимальное количество раз, поэтому может быть безопаснее сказать:
output1, output2 = contents.split('\n\n', 1)
Если есть два или более пустыхстрок, output1
будет содержимым до первой пустой строки.output2
будет всем после первой пустой строки, включая любые дальнейшие пустые строки.
Конечно, это может завершиться ошибкой, если нет пустых строк.