извлечь фрагмент из текстового файла - PullRequest
0 голосов
/ 18 марта 2020

Я написал код для захвата фрагмента в файл .txt. Мой файл разделен на фрагменты: A, B, C, D, E, F, G, H ... Я пытаюсь извлечь содержимое между фрагментом C - D, но в выходной файл печатается по всему содержимому A - D. Как извлечь только содержимое без интервала C - D?

содержимое входного файла:

Фрагмент A:

От самых прекрасных существ, которых мы желаем увеличить, Таким образом, роза красоты никогда не будет d ie, Но, как должен распускатель, со временем умереть, Его нежный наследник может нести его память: Но ты заключил контракт с твои собственные светлые глаза, Подари пламя твоего света самодостаточным топливом, Заставив голод, где изобилие, Ты сам, твой враг, слишком жесток к твоему милому я: Ты, что теперь украшение мира 1010 *, и только Вестник безвкусной весны, В твоем собственном зародыше похоронен твой контент, И, нежный чурл, сделай все отходы от скупости: Жаль мир, или это обжорство, Чтобы съесть должное миру, могилой и тобой.

Фра gment B:

Когда сорок зим осаждают твои брови, И рыть глубокие окопы в поле твоей красоты, Гордая ливрея твоей юности так пристально глядит сейчас, Будет полнейшим сорняком, которого держат: Тогда спрашивают, где вся твоя красота, Где все сокровища твоих похотливых дней; Сказать, что в твоих собственных глубоких утонувших глазах был всепожирающий стыд и безудержная похвала Насколько больше похвалы заслуживает использование твоей красоты, Если бы ты мог ответить: «Это мое прекрасное дитя Суммирует мой счет и оправдываю мое старое оправдание:« Докажи свою красоту преемственностью! » Это должно быть сделано заново, когда ты состаришься, И увидишь, как кровь твоя теплая, когда чувствуешь холод.

Фрагмент C:

Посмотри в свои бокал и скажи лицо, которое ты видишь Сейчас время, когда лицо должно сформировать другое; Чью же чушь починить, если теперь не возродишься, Ты соблазняешь мир, лишай матери. Ибо где же она так прекрасна, чье неловкое чрево презирает почву твоего мужа dry? Или кого он так любит, будет могилой своей любви к себе, чтобы остановить потомство? Ты - бокал твоей матери, и она в тебе Зовет прекрасный апрель ее расцвета; Так ты увидишь windows века твоего, несмотря на морщины, это твое золотое время. Но если ты живешь, как ты не помнишь, D ie одинокий, и твой образ умирает вместе с тобой.

Фрагмент D:

Неразумная прелесть, зачем ты тратишь На себя самого наследие твоей красоты? По завещанию природы ничего не дает, но одалживает, И, откровенно говоря, она дает взамен те, кто свободен. Тогда, красавчик, черт возьми, зачем ты злоупотребляешь щедрыми щедротами, которые тебе дают? Бесполезный ростовщик, почему ты используешь такую ​​большую сумму, но не можешь жить? За то, что траффи c только с самим собой, Ты себя самого, своего милого себя, обманываешь: Тогда как, когда природа зовет тебя уйти, Какой приемлемый одитинг ты можешь оставить? Твоя неиспользованная красота должна быть захоронена с тобой, Который, бывало, жив, чтобы быть исполнителем.

хотел:

Фрагмент C:

Посмотри в свой стакан и скажи лицо, которое ты видишь. Сейчас время, когда лицо должно сформировать другое; Чью же чушь починить, если ты теперь не возродишь, Ты обольщаешь мир, лишай матери. Ибо где же она так прекрасна, чье неловкое чрево презирает почву твоего мужа dry? Или кого он так любит, будет могилой своей любви к себе, чтобы остановить потомство? Ты - бокал твоей матери, и она в тебе Зовет прекрасный апрель ее расцвета; Так ты увидишь 1058 год твоего века, несмотря на морщины, это твое золотое время. Но если ты живешь, как не помнишь, D ie одинокое и твое изображение умирает вместе с тобой.

код и выходной файл: код и выходной файл

1 Ответ

0 голосов
/ 18 марта 2020
i = 0
with open('1.txt', 'r') as file:
    for line in file:
        if 'Fragment D:' in line:
            i=0
        if 'Fragment C:' in line:
            i=1
        if i == 1:
            print(line)

У вас есть ошибка в вашем коде. Метод Find всегда возвращает True в 4 строке.

...