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

输入10时while循环无法终止,新手求助排查(附代码及截图)

问题解决办法

大概率是这两个问题导致循环停不下来:

  • 没把输入的内容转成整数:input()拿到的是字符串,你拿字符串"10"和整数10比,肯定不等,循环自然不会终止。
  • 循环的终止逻辑写错了:比如循环里没更新要判断的变量,或者break放错了位置。

给你个修正后的代码参考:

num_list = []
while True:
    # 把输入转成整数才能和10正确比较
    num = int(input("请输入数字:"))
    # 输入10就直接跳出循环
    if num == 10:
        break
    # 不是10就加到列表里
    num_list.append(num)

# 遍历列表判断奇偶
for num in num_list:
    if num % 2 == 0:
        print(f"{num} 是偶数")
    else:
        print(f"{num} 是奇数")

简单说下逻辑:

  • 用while True构建无限循环,碰到10就用break终止,比写复杂的循环条件更清楚。
  • 必须把输入转成整数,不然字符串和整数没法正确对比。
  • 如果需要把10也放进列表里,就把num_list.append(num)移到if判断前面就行。
  • 判断奇偶用取模%,除以2余数是0就是偶数,反之是奇数。

要是你的代码还有其他细节问题,照着这个核心逻辑调整就行——保证输入类型正确,终止判断能触发跳出循环。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 05:00:08