У меня есть книга в текстовом файле, и мне нужно распечатать первый абзац каждого раздела. Я думал, что если я найду текст между \n\n и \n, я смогу найти свой ответ. Вот мои коды, и это не сработало. Можете ли вы сказать мне, где я не прав?
lines = [line.rstrip('\n') for line in open('G:\\aa.txt')]
check = -1
first = 0
last = 0
for i in range(len(lines)):
if lines[i] == "":
if lines[i+1]=="":
check = 1
first = i +2
if i+2< len(lines):
if lines[i+2] == "" and check == 1:
last = i+2
while (first < last):
print(lines[first])
first = first + 1
Также я нашел код в stackoverflow, я тоже попробовал, но он просто напечатал пустой массив.
f = open("G:\\aa.txt").readlines()
flag=False
for line in f:
if line.startswith('\n\n'):
flag=False
if flag:
print(line)
elif line.strip().endswith('\n'):
flag=True
Я поделился образцом раздела этой книги ниже.
I
ОБЛАСТЬ ЗЕМЛИ
Перед нашими дверями лежит обширное поле захватывающих человеческих интересов, которое до сих пор мало исследовано. Это Поле Животного Интеллекта.
Из всех видов интереса, связанного с изучением диких животных мира, нет ни одного, который превосходил бы изучение их ума, их морали и действий, которые они совершают как результаты своих умственных процессов.
II
ТЕМПЕРАМЕНТ И ИНДИВИДУАЛЬНОСТЬ ДИКИХ ЖИВОТНЫХ
Что я пытаюсь сделать здесь, так это найти строки в верхнем регистре и поместить их все в массив. Затем, используя метод index, я найду первый и последний абзацы каждого раздела, сравнив индексы этих элементов этого созданного мной массива.
Вывод должен быть таким:
Перед нашими дверями лежит обширное поле захватывающих человеческих интересов, которое до сих пор мало исследовано. Это Поле Животного Интеллекта.
Что я пытаюсь сделать здесь, так это найти строки в верхнем регистре и поместить их все в массив. Затем, используя метод index, я найду первый и последний абзацы каждого раздела, сравнив индексы этих элементов этого созданного мной массива.