首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >当尝试给用户输入时发生EOF错误

当尝试给用户输入时发生EOF错误
EN

Stack Overflow用户
提问于 2022-11-02 02:12:18
回答 2查看 69关注 0票数 0

我正在学习python,并在test.py中有以下代码:

代码语言:javascript
运行
复制
string = input()
print(string)

与教程相反,它给了我一个错误:

代码语言:javascript
运行
复制
    string = input()
EOFError: EOF when reading a line

我不知道我在这里做错了什么!任何帮助都很感激!

EN

回答 2

Stack Overflow用户

发布于 2022-11-02 02:18:58

你肯定出了点问题,IDE刚刚试过你的代码,它的工作方式就像它应该有的那样。你用什么程序来编码(IDE)?

票数 3
EN

Stack Overflow用户

发布于 2022-11-02 03:00:35

在运行代码时,您似乎有一个EOFError异常。EOFError是“行尾错误”的缩写.当Python到达用户输入的末尾而没有接收到任何输入时,就会发生此错误。

出现EOFError的原因是,当没有提供数据时,Python试图在变量string中打印输入。

通常,当您按Enter键作为输入时,此错误不应弹出,因为它将变量注册为代码中的字符串。它可以通过以下击键手动触发:

  • Windows:Ctrl + Z -> Enter
  • macOS/Linux:Ctrl + D -> Enter

我建议用不太可能出现EOFError的相同代码重新运行您的程序。当程序需要输入时,尽量避免使用上面的击键,这样错误就不会出现。

如果不希望在程序中看到错误,请尝试处理错误并执行另一个操作,如打印字符串。如果发生EOFError异常,我输入的代码块将打印“未提供给输入函数的数据”。

代码语言:javascript
运行
复制
try:
     string = input()
     print(string)
except EOFError:
     print("no data provided to input function")

如果您是初学者,那么从Python开始就不需要这个片段了。仅作为一个友好的提示,您应该命名与其用途相关的变量(例如:将两个数字的和命名为sum1而不是整数)。用它的数据类型命名它对于非常短期的使用是可以的,但是在任何编码语言中AFAIK都不是传统的。

(我对StackOverflow的第一个回答.)

正式文件:EOFError

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74283683

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档