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

如何使用Python接收多个数字并计算显示其平均值?

问题分析与代码修正

原代码的错误点:

  • 直接把用户输入的逗号分隔字符串转为int,会触发类型错误,因为输入不是单个整数
  • 整数类型没有len()方法,调用n.len()会报错
  • split(",")得到的是字符串列表,需要转为整数才能参与数值计算
  • range(a)用法错误,range()需要整数参数,应该直接遍历列表元素
  • 使用了Python内置函数sum作为变量名,容易引发冲突
  • 平均值计算时,应该除以输入数字的个数,而非错误转换的n

修正后的代码:

# 接收逗号分隔的输入字符串
input_str = input("请输入用逗号分隔的多个数字: ")
# 分割字符串并转为整数列表(处理可能的空格)
num_list = [int(num.strip()) for num in input_str.split(",")]
# 计算总和与平均值
total = sum(num_list)
average = total / len(num_list)
# 输出结果
print(f"平均值为: {average}")

代码说明:

  • 先保留原始输入字符串,不直接做类型转换
  • 用列表推导式完成字符串分割、去空格、转整数的操作,兼容带空格的输入(比如"1, 2, 3")
  • 调用Python内置sum()函数直接计算列表总和,代码更简洁高效
  • 用len(num_list)获取有效数字的数量,确保平均值计算准确

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 06:25:06