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

判断闰年的Python代码被判定存在无限循环,请求排查问题

排查闰年判断代码的"无限循环"报错问题

你的代码逻辑完全没问题,在普通IDE里运行正常是因为你手动输入了年份,而MOOC平台的判题机制和本地/在线IDE不一样——这类平台会自动批量传入测试用例,不需要你写输入提示。

你代码里的input("Please type in a year:")带了提示文本,平台在自动输入测试年份时,会把这个提示当成程序输出的一部分,导致输入读取逻辑混乱,程序一直等待正确的输入,最终被判定为"无限循环"(本质是超时)。

解决方法很简单,把输入语句改成不带提示的版本:

# Write your solution here
y = int(input())
if y%4==0:
    if y%100==0 :
        if y%400==0:
            print("That year is a leap year.")
        else:
            print("That year is not a leap year.")
    else:
        print("That year is a leap year.")
else:
    print("That year is not a leap year.")

另外,你也可以把嵌套的if简化成更简洁的逻辑,可读性更好,效果完全一致:

y = int(input())
if y % 400 == 0 or (y % 4 == 0 and y % 100 != 0):
    print("That year is a leap year.")
else:
    print("That year is not a leap year.")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 12:50:45