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

Python使用while循环统计奇偶个数的缩进错误求解

代码问题排查与修正方案

存在的问题

  • 缺少依赖导入:使用了random模块但没有提前导入,运行会触发NameError
  • 循环条件逻辑反向:需求为奇数比偶数多5个时停止程序,因此循环执行的条件应为odds - evens < 5,原代码写为>=5,初始状态下差值为0不满足循环条件,代码不会进入循环直接终止
  • 缩进不合理&冗余代码:getrandom()函数定义被放在了while循环内部,每次循环都会重复定义一次函数,且该函数定义后未被任何代码调用,属于无效代码
  • 打印信息不清晰:原有打印语句仅输出计数,无法区分统计的是奇数还是偶数个数

修正后可运行代码

import random

evens = 0
odds = 0
# 当奇数与偶数的差值小于5时持续运行
while odds - evens < 5:
    digit = random.randint(1, 99)
    if digit % 2 == 0:
        evens += 1
        print(f"生成偶数:{digit},偶数累计个数:{evens}")
    else:
        odds += 1
        print(f"生成奇数:{digit},奇数累计个数:{odds}")

print(f"程序终止:奇数个数{odds},偶数个数{evens},奇数比偶数多{odds-evens}个")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 18:57:02