Python 3: receive user input including newline cha

2020-02-11 04:28发布

I'm trying to read in the following text from the command-line in Python 3 (copied verbatim, newlines and all):

lcbeika
rraobmlo
grmfina
ontccep
emrlin
tseiboo
edosrgd
mkoeys
eissaml
knaiefr

Using input, I can only read in the first word as once it reads the first newline it stops reading.

Is there a way I could read in them all without iteratively calling input?

2条回答
beautiful°
2楼-- · 2020-02-11 05:04

if you are passing the text into your script as a file , you can use readlines()

eg

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

or you can use fileinput

import fileinput
for line in fileinput.input():
    print line
查看更多
贼婆χ
3楼-- · 2020-02-11 05:11

You can import sys and use the methods on sys.stdin for example:

text = sys.stdin.read()

or:

lines = sys.stdin.readlines()

or:

for line in sys.stdin:
    # Do something with line.
查看更多
登录 后发表回答