我想读取多行输入。输入格式是第一行包含 int 作为编号。行后跟字符串行。我试过
while True:
line = (raw_input().strip())
if not line: break
elif line.isdigit(): continue
else:
print line
它打印字符串行但显示运行时错误消息
Traceback (most recent call last):
File "prog.py", line 2, in <module>
line = (raw_input().strip())
EOFError: EOF when reading a line
它是读取输入的正确方法吗?
为什么运行时出错?
我是 python 新手,请帮助我
最佳答案
如果您使用 EOF 终止程序(Ctrl-d 在 Linux 中,Ctrl-z 在 Windows 中),您可能会收到 EOFError。 您可以通过以下方式捕获错误:
while True:
try:
line = (raw_input().strip())
except EOFError:
break
if not line: break
关于原始输入多行字符串时python运行时错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14644823/