При чтении из текстового файла с помощью .readlines(), как вставить новую строку?

#python

#python

Вопрос:

Я хотел бы сохранить текст в .txt-файле и вызвать его с помощью

 f = open("test.txt", "r")

f1 = f.readlines()
  

Это возвращает список, который кажется идеальным, потому что я могу выбрать, какой элемент из списка я хочу. Однако мне нужно сохранить несколько предложений в одной строке, чтобы сгруппировать правильные предложения. Если я хочу напечатать одну группу предложений в отдельных строках, я не могу использовать /n для начала новой строки при чтении из .txt-файла. Но если я обычно определяю список с /n в нем, он создает новую строку без проблем. Кто-нибудь знает способ обойти это?

Комментарии:

1. Привет. Помогло ли это вам? Я просто возвращаюсь и проверяю ответы, которые я опубликовал, чтобы узнать, могу ли я помочь больше или могу ли я выяснить, почему мой ответ не был принят или поддержан человеком, который задал вопрос.

Ответ №1:

Одно дело, что это список, и вы можете вставить элемент в позицию:

 f1.insert(POSITION,"n")
  

Ответ №2:

Что вы можете сделать, это выбрать разделитель, который нигде не будет отображаться в вашем тексте, и использовать его для разделения каждой строки в вашем файле входных данных. Затем, после чтения каждой строки и перед ее печатью или выполнением чего-либо еще, что вы хотите с ней сделать, замените разделители на новые строки:

 """
Data in the file '/tmp/test.txt':
Now is the time|for all good men|to come to the aid|of their country.
Jack and Jill went|up the hill to fetch|a pail of water.
"""

with open("/tmp/test.txt", "r") as f:
    for line in f.readlines():
        if not line.strip():
            continue
        line = line.replace('|', 'n')
        print(line)
  

Результат:

 Now is the time
for all good men
to come to the aid
of their country.

Jack and Jill went
up the hill to fetch
a pail of water.