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

平方数函数挑战无法运行:不知如何用sys.stdin传递测试输入

代码修复指南:输入数字计算平方

问题诊断

你的代码存在两个核心问题:

  • square 函数里用 return print(x**2) 逻辑错误——print 函数返回 None,导致函数无法输出实际的平方计算值
  • sys.stdin 的循环仅原样输出输入内容,完全没调用 square 函数执行计算

修复后的代码

import sys

def square(x):
    return x ** 2  # 专注计算,直接返回平方值,不嵌套print

# 处理标准输入的逻辑
for line in sys.stdin:
    # 清除输入行的换行符,转换为数字类型
    try:
        num = float(line.strip())
        result = square(num)
        print(result)
    except ValueError:
        print("输入不是有效数字")

使用说明

  • 运行代码后,在控制台输入数字并回车,即可得到对应平方结果
  • 若输入非数字内容,会触发错误提示

关键修改点

  • 让 square 函数仅负责数值计算,分离计算与打印逻辑
  • 遍历 sys.stdin 时,先处理输入格式(去换行、转数字),再调用计算函数并输出结果
  • 添加异常处理,避免输入非数字时程序崩溃

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 12:01:03