當輸入量未知時,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的終結。 –