鱼C论坛

 找回密码
 立即注册
查看: 3091|回复: 5

[已解决]萌新求助EOF错误

[复制链接]
发表于 2022-11-27 20:16:02 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x

def isPrime(n):
    if type(n)==int:
        for j in range(2,n):
            if n%j==0:
                x="False"
            else:
                x="True"
    else:
        x="Not an integer"
    return x
a=input("")
b=eval(input(""))
c=eval(input(""))
print(isPrime(a))
print(isPrime(b))
print(isPrime(c))


怎么改,为什么出错,哪里出错了


这是平台的测评
Traceback (most recent call last):
  File "/617421514/p617421514", line 13, in <module>
    a=input()
EOFError: EOF when reading a line

最佳答案
2022-11-27 20:28:52
翻译自https://www.educba.com/python-eoferror/

Python EOFError 简介
python 中的 EOFError 是处理错误的异常之一,在 python 版本 2.7 和 python 版本 3.6 以及 3.6 之后的其他版本中的 input() 函数中断或当 input() 函数在 python 版本 2.7 中到达文件的意外结尾时,即函数在遇到输入结束之前不读取任何日期。而像 read() 方法这样的方法在遇到文件末尾时必须返回一个为空的字符串,而 python 中的这个 EOFError 是从 Exception 类继承而来的,而 Exception 类又是从 BaseException 类继承的。
语法:
EOFError: EOF when reading a line


EOFError 引发的原因
1. BaseException 类是 Exception 类的基类,而 Exception 类又继承了 EOFError 类。

2. EOFError 在技术上不是错误,但它是一个例外。当内置函数(如input()函数或read()函数返回一个空的字符串而不读取任何数据时,将引发EOFError异常。

3. 当我们的程序尝试获取某些内容并对其进行修改时,会引发此异常,但是当它无法读取任何数据并返回空字符串时,将引发 EOFError 异常。
1.png
2.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-11-27 20:22:34 | 显示全部楼层
sublime?
那就是sublime的问题
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-27 20:28:52 | 显示全部楼层    本楼为最佳答案   
翻译自https://www.educba.com/python-eoferror/

Python EOFError 简介
python 中的 EOFError 是处理错误的异常之一,在 python 版本 2.7 和 python 版本 3.6 以及 3.6 之后的其他版本中的 input() 函数中断或当 input() 函数在 python 版本 2.7 中到达文件的意外结尾时,即函数在遇到输入结束之前不读取任何日期。而像 read() 方法这样的方法在遇到文件末尾时必须返回一个为空的字符串,而 python 中的这个 EOFError 是从 Exception 类继承而来的,而 Exception 类又是从 BaseException 类继承的。
语法:
EOFError: EOF when reading a line


EOFError 引发的原因
1. BaseException 类是 Exception 类的基类,而 Exception 类又继承了 EOFError 类。

2. EOFError 在技术上不是错误,但它是一个例外。当内置函数(如input()函数或read()函数返回一个空的字符串而不读取任何数据时,将引发EOFError异常。

3. 当我们的程序尝试获取某些内容并对其进行修改时,会引发此异常,但是当它无法读取任何数据并返回空字符串时,将引发 EOFError 异常。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-27 20:37:47 | 显示全部楼层
      这个代码 100 % 没有问题!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-11-27 21:44:34 | 显示全部楼层
asky533 发表于 2022-11-27 20:28
翻译自https://www.educba.com/python-eoferror/

Python EOFError 简介

虽然知道原因了,但是怎么解决这个问题呢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-28 12:04:49 | 显示全部楼层
将夕愿 发表于 2022-11-27 21:44
虽然知道原因了,但是怎么解决这个问题呢

如何避免EOFError
如果文件结束错误或 EOFError 在没有使用 input() 函数读取任何数据的情况下发生,则会引发 EOFError 异常。为了避免引发此异常,我们可以尝试以下选项:

在发送文件结束异常之前,请尝试输入类似 CTRL + Z 或 CTRL + D 的内容或以下示例可以演示的空字符串:
#try and except blocks are used to catch the exception
try:
            data = raw_input ("Do you want to continue?: ")
except EOFError:
            print ("Error: No input or End Of File is reached!")
            data = ""
            print data

说明:在上面的程序中,try和except 块用于避免EOFError异常,通过使用一个空字符串,该字符串不会打印文件结束错误消息,而是打印由程序中显示的自定义消息,并且输出中也打印相同的内容。程序的输出显示在上面的快照中。

如果必须处理 EOFError 异常,则可以使用 try and catch 块。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-15 17:36

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表