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

while True循环出现SyntaxError,求奇偶统计程序错误排查帮助

问题排查:while循环的SyntaxError错误

你的代码里的SyntaxError根源很明确:while True语句的结尾用了等于号=,而Python要求循环、条件语句的结尾必须使用冒号:。

修正后的完整代码如下:

number = 0
even = 0
odd = 0
while True:
    number = input('add ra vared kned\n> ')
    if number == 'end' or number == 'finish' or number == 'done' :
        break
    number = int(number)
    if number % 2 == 0:
        even = even + 1
    else :
        odd = odd + 1

print ('Number of even numbers =',even, 'Number of odd numbers =',odd )

额外提个小优化:如果用户输入了非数字的内容(除了结束指令),int(number)会抛出ValueError,你可以加个异常处理来避免程序崩溃,比如:

number = 0
even = 0
odd = 0
while True:
    number = input('add ra vared kned\n> ')
    if number in ['end', 'finish', 'done']:
        break
    try:
        number = int(number)
        if number % 2 == 0:
            even += 1
        else:
            odd += 1
    except ValueError:
        print("请输入有效的数字或者结束指令")

print(f'Number of even numbers = {even}, Number of odd numbers = {odd}')

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 07:42:05