Python 3: получить пользовательский ввод, включая символы новой строки - PullRequest
6 голосов
/ 30 марта 2010

Я пытаюсь прочитать следующий текст из командной строки в Python 3 (дословно скопировано, переводы строки и все):

lcbeika
rraobmlo
grmfina
ontccep
emrlin
tseiboo
edosrgd
mkoeys
eissaml
knaiefr

Используя input, я могу читать только по первому слову, поскольку, как только он читает первую новую строку, он перестает читать.

Есть ли способ, которым я мог бы прочитать их все без итеративного вызова input?

Ответы [ 2 ]

10 голосов
/ 30 марта 2010

Вы можете import sys и использовать методы на sys.stdin, например:

text = sys.stdin.read()

или

lines = sys.stdin.readlines()

или

for line in sys.stdin:
    # Do something with line.
0 голосов
/ 30 марта 2010

если вы передаете текст в ваш скрипт как файл, вы можете использовать readlines()

например

data=open("file").readlines()

или вы можете использовать fileinput

import fileinput
for line in fileinput.input():
    print line
...