当输入量未知时,Python 3中读取多行用户输入的最佳方式是什么?多行输入将通过回车Python3读取未知多行输入的最佳方式
当我尝试使用
while True:
line = input()
if line:
print(line)
else:
break
分离,收到的EOFError
然后,如果我其更改为try-catch块
while True:
line = input()
try:
print(line)
except EOFError:
break
我仍然得到EOFError。
这是合乎逻辑的,因为打印时不会发生错误,但是在input()处。所以这应该在'try'中。 –
你是从标准输入管道输入数据吗?我从来没有看到EOFError调用'input',但我想这是可能的。 –
@AdamSmith:是的,如果你在大多数终端中使用Ctrl + D,这也可以看作是stdin的终结。 –