# -*- coding: utf-8 -*- # Список исключений list_ex = [] for num_ex in range(13, 20): list_ex.append(repr(num_ex) + "") print list_ex # Файловый список input_file = open('read1.txt', 'r') list_text = [] for line in input_file: list_text.append(line.rstrip()) print list_text # Очистка от номера страницы list_clear = [] for words in list_text: if words not in list_ex != True: list_clear.append(words) print list_clear # Вывод в файл output_file = open('clear_text.txt', 'w') for clear_words in list_clear: output_file.write(clear_words.strip() + '\n')
Все бы хорошо: парсит строку - если только номер - удаляет, но бывает, что номер страницы сдвинут. Вот и возникли вопросы:
1) Как достать с файла номера страниц (просто представьте отсканированную книгу и поймете)
2) Как удалить двойной Enter в тексте методами Питона?
Были пару размышлений:
1) Пропарсить страницу побуквенно.
2) Вшить вот такой код, дабы из побуквенного не удалил ничего лишнего (оставит весь текст без цифр ведь):
list_clear = [] for words in list_text: if words not in list_ex[0] != True: list_clear.append(words) list_ex.pop(0) else: num_text = list_text.count(words) num_ex = list_ex.count(num_text) + 1 list_ex.pop(:num_ex)