Python代码无输出问题求助:需计算平均值但代码无结果
问题排查与修正
首先,你的代码根本不是计算平均值的逻辑,而是试图找出三个数的中间值,但存在大量逻辑漏洞,导致绝大多数输入都不会触发任何print语句,所以没有输出。
代码的核心问题
你的三个if条件只覆盖了三种严格大小顺序的情况:
a > b > c→ 输出ba > c > b→ 输出cb > a > c→ 输出a
但以下所有情况都没有被覆盖,会直接跳过所有print:
- 存在相等的数值(比如
a=b>c、a=b=c、a>b=c等) - 其他大小顺序(比如
b > c > a、c > a > b、c > b > a)
修正方案
如果你确实想计算平均值
直接计算三个数的总和除以3即可,代码如下:
a = int(input()) b = int(input()) c = int(input()) average = (a + b + c) / 3 print(average)
如果你是想找出三个数的中间值
最简单的方法是用排序:
a = int(input()) b = int(input()) c = int(input()) nums = sorted([a, b, c]) print(nums[1]) # 排序后的第二个元素就是中间值
内容的提问来源于stack exchange,提问作者Искандер Насыров
相关产品推荐
相关产品推荐

