Как преобразовать символы в строки в Python, используя метод чтения - PullRequest
1 голос
/ 09 апреля 2019

Нуб здесь.Мне нужно прочитать в файле, используя метод read (а не readlines ()) (который обеспечивает ввод для нескольких функций), и идентифицировать все строки в этом файле (т.е. распечатать или добавить в список).

Я пробовал объединять, разбивать, добавлять в списки, и все это было мало что показать.

# Code I'm stuck with:
with open("text.txt", 'r') as file:
    a = file.read()

# Stuff that doesn't work
for line in a:
    # can't manipulate when using the below, but prints fine
    # print(line, end = '')
    temp = (line, end = '')

for line in a:
    temp = '' 
    while not ' ':
    temp += line

new = []
for i in a:
    i = i.strip()

Я склонен получать либо все в длинной строке, либо 'I', '',' t ',' e ',' n ',' d ',' ',' t ',' o '.... получите отдельные символы.Я просто хочу, чтобы каждая строка соответствовала символу новой строки \ n, или, в принципе, что мне даст readlines (), несмотря на то, что файл хранится в памяти с помощью read ()

Ответы [ 3 ]

3 голосов
/ 09 апреля 2019
with open('text.txt') as file:
    for line in file:
       # do whatever you want with the line

Объект file повторяется по строкам в файле - для текстового файла.

1 голос
/ 09 апреля 2019

Все, что вам нужно сделать, это разделить файл после прочтения, и вы получите список каждой строки.

with open("text.txt", 'r') as file:
     a = file.read()

a.split('\n')
0 голосов
/ 09 апреля 2019

С помощью приведенной выше справки и с помощью чтения, а не чтения строк я смог выделить отдельные строки из файла следующим образом:

with open("fewwords.txt", "r") as file:
    a = file.read()

empty_list = []

# break a, which is read in as 1 really big string, into lines, then remove newline char
a = a.split('\n')
for i in range(len(a)):
    initial_list.append(a[i])
...