我正在学习python,并在test.py中有以下代码:
string = input()
print(string)
与教程相反,它给了我一个错误:
string = input()
EOFError: EOF when reading a line
我不知道我在这里做错了什么!任何帮助都很感激!
发布于 2022-11-02 02:18:58
你肯定出了点问题,IDE刚刚试过你的代码,它的工作方式就像它应该有的那样。你用什么程序来编码(IDE)?
发布于 2022-11-02 03:00:35
在运行代码时,您似乎有一个EOFError
异常。EOFError
是“行尾错误”的缩写.当Python到达用户输入的末尾而没有接收到任何输入时,就会发生此错误。
出现EOFError
的原因是,当没有提供数据时,Python试图在变量string
中打印输入。
通常,当您按Enter键作为输入时,此错误不应弹出,因为它将变量注册为代码中的字符串。它可以通过以下击键手动触发:
Ctrl + Z
-> Enter
Ctrl + D
-> Enter
我建议用不太可能出现EOFError
的相同代码重新运行您的程序。当程序需要输入时,尽量避免使用上面的击键,这样错误就不会出现。
如果不希望在程序中看到错误,请尝试处理错误并执行另一个操作,如打印字符串。如果发生EOFError异常,我输入的代码块将打印“未提供给输入函数的数据”。
try:
string = input()
print(string)
except EOFError:
print("no data provided to input function")
如果您是初学者,那么从Python开始就不需要这个片段了。仅作为一个友好的提示,您应该命名与其用途相关的变量(例如:将两个数字的和命名为sum1而不是整数)。用它的数据类型命名它对于非常短期的使用是可以的,但是在任何编码语言中AFAIK都不是传统的。
(我对StackOverflow的第一个回答.)
正式文件:EOFError
https://stackoverflow.com/questions/74283683
复制相似问题