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

使用split方法存储输入值并计算数字平均值的Python实现咨询

现有代码问题分析
  • 直接对input()返回的字符串调用int()转换,得到的是单个整数对象,整数没有split()方法,运行时会直接抛出属性错误。
  • 即使去掉外层的int()转换,split()返回的是字符串列表,直接对列表元素执行加法会触发字符串拼接逻辑,无法得到正确的数值运算结果。
修复后的基础实现(适配固定3个数字输入的需求)
a, b, c = map(int, input("enter 3 numbers:").split())
average = (a + b + c) / 3
print(average)
通用优化方案(支持任意数量数字输入,无需硬编码变量)

该方案不用提前限定输入的数字个数,可自动适配用户输入的有效数字数量计算平均值:

nums = list(map(int, input("请输入任意个数字,用空格分隔:").split()))
average = sum(nums) / len(nums)
print(f"平均值为:{average}")

如果需要提升程序鲁棒性,避免用户输入非数字、空内容时程序崩溃,可以增加输入校验逻辑:

while True:
    input_content = input("请输入任意个数字,用空格分隔:").strip()
    # 校验空输入
    if not input_content:
        print("未输入任何内容,请重新输入")
        continue
    try:
        nums = list(map(int, input_content.split()))
        break
    except ValueError:
        print("输入包含非数字内容,请重新输入")
average = sum(nums) / len(nums)
# 保留两位小数输出,可按需调整格式
print(f"平均值为:{average:.2f}")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 09:15:01