You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

运行作业计算器代码时持续弹出EOFError报错,需保留自定义函数

解决EOFError问题:计算器代码输入异常处理

EOFError是因为input()尝试读取输入时,未获取到任何内容就遇到了文件结束符(EOF),常见于无交互环境运行脚本、在线平台未配置输入或提前终止输入的场景。以下是几种保留calculate函数的解决方法:

方法1:添加异常捕获,避免程序崩溃

修改代码,捕获输入异常并给出提示:

from math import *

def calculate(rlist):
    output = list()
    for j in range(len(rlist)):
        s = round(rlist[j] ** 2 * pi, 2)
        output.append(s)
    print(output)

try:
    r = list(map(float, input().split()))
    calculate(r)
except EOFError:
    print("请输入有效的数字列表(用空格分隔)")
except ValueError:
    print("输入格式错误,请输入纯数字并用空格分隔")

方法2:本地调试时预定义测试输入

如果本地调试不想手动输入,可以临时添加测试输入,正式运行时注释即可:

from math import *

def calculate(rlist):
    output = list()
    for j in range(len(rlist)):
        s = round(rlist[j] ** 2 * pi, 2)
        output.append(s)
    print(output)

# 调试用预定义输入,正式运行时注释
# r = [1.0, 2.5, 3.0]
# 正式输入逻辑
try:
    r = list(map(float, input().split()))
    calculate(r)
except EOFError:
    print("缺少输入内容,请提供用空格分隔的数字列表")

方法3:在运行环境正确提供输入

  • 终端运行:执行脚本后,手动输入用空格分隔的数字(如1 2.5 3),按下回车即可。
  • 在线平台运行:找到平台的输入框,填入数字列表再点击运行。

内容的提问来源于stack exchange,提问作者closedcntr

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 00:10:31