как читать данные построчно в Python - PullRequest
0 голосов
/ 25 июня 2018

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

#n
44026533495303941500076737402297403862946691

#e
6969696

#f
37243759787836627691897628674719248256836857

В конце я хочу узнать числа, сохраненные с переменными n, e, f

Iпытался читать его построчно, но поток данных дает мне только букву за буквой. Мой код был следующим:

file = open(sys.argv[2]).read() # for getting file
for line  in file:
    print(line)   # but it gives letter for letter

Моя идея состояла в том, чтобы взять, например,

n = file[1]
e = file[5]

1 Ответ

0 голосов
/ 26 июня 2018

Закрыть, но без сигары.

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

file = open(sys.argv[2])  # no .read() please
for line in file:
    print(line)   # now it gives the line

file.close() # don't forget to release the resource!

... но это то, что вы действительно хотите

with open(sys.argv[2], 'r') as input_file:
    for line in input_file:
        print(line)

Используя ключевое слово with, вы неНе забудьте закрыть ресурс!( вот учебник по этому вопросу ).

Также, если вы укажете 'r' в open, будет немного более очевидно, что вы собираетесь делать с файлом.Не важно, но рекомендуется.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...