Вы хорошо начали, вот один из способов выполнить задачу,
groups = open('input.txt').read()
groups_divided = groups.split('=\n')
for group in groups_divided:
temp = group.split('\n')
with open(temp[0].split()[1] + '.txt', 'w') as out:
out.write("\n".join(temp[1:]))
То, что вы получили после groups.split('=\n')
, представляло собой список сгруппированных строк в строке from. Эта программа обрабатывает каждую строковую группу в этом списке, то есть каждую физическую группу, и сохраняет обработанную версию в файл.
Сначала разбивает строку группы по символу новой строки '\n'
, создавая temp
. Затем он извлекает номер группы для имени выходного файла. Наконец, он сохраняет все строки в группе (сохраненные в temp
), за исключением первой, которая является строкой GROUP 00#
. При сохранении он объединяет все сохраненные строки с символами новой строки, которые в противном случае удаляются с помощью split('\n')
.