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

Python代码计算故障求助:变量始终显示为0.0无法正常统计

问题分析与修复

你的代码核心问题是缩进错误:total = total + num、num1 = num1 + 1、average = total / num1这三行被缩进在了continue语句之后,而continue会直接跳过当前循环的剩余代码、进入下一次循环,导致这三行更新变量的代码永远不会被执行,所有变量一直保持初始值0.0。

修正后的代码

total = 0.0
num1 = 0.0
average = 0.0

while True:
    input_num = input("Enter a number ")

    if input_num == 'done':
        break

    try:
        num = float(input_num)
    except ValueError:
        print("Invalid Input")
        continue

    # 转换成功后执行变量更新,缩进与try/except同级
    total = total + num
    num1 = num1 + 1
    average = total / num1

print("total: ", total)
print("count: ", num1)
print("average: ", average)

也可以把变量更新逻辑放在try块内部(确保转换成功后执行),写法如下:

total = 0.0
num1 = 0.0
average = 0.0

while True:
    input_num = input("Enter a number ")

    if input_num == 'done':
        break

    try:
        num = float(input_num)
        # 转换成功后直接更新变量
        total += num
        num1 += 1
        average = total / num1
    except ValueError:
        print("Invalid Input")
        continue

print("total: ", total)
print("count: ", num1)
print("average: ", average)

两种写法都能让变量更新逻辑正常执行,从而得到正确的计算结果。

内容的提问来源于stack exchange,提问作者LateNightGame's

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 03:11:50