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

Python代码报错'n is not defined':奇偶判断逻辑崩溃求助

解决代码崩溃问题:"n is not defined"

嘿,我来帮你搞定这个报错!你的代码之所以会抛出n is not defined的错误,核心问题是变量定义的顺序不对。

Python是从上到下逐行执行代码的,你的判断逻辑(那个if语句)写在了n变量被赋值的代码前面——当Python运行到if n in range(6, 21)...这一行时,n还没被创建(赋值的代码在下面的if __name__ == '__main__':块里),自然就会报错说变量未定义啦。

修复后的代码(保留原逻辑)

把判断逻辑移到n被赋值之后,也就是放到__main__代码块里,就能正常运行了:

if __name__ == '__main__':
    n = int(input())
    if n in range(6, 21) or n % 2 != 0:
        print("Weird")
    else:
        print("Not Weird")

如果要严格符合你的需求(奇数输出Weird,偶数输出Not Weird)

原代码的逻辑其实额外加了“6到20之间的偶数也输出Weird”的条件,如果你的真实需求是纯奇偶判断,那可以简化成这样:

if __name__ == '__main__':
    n = int(input())
    if n % 2 != 0:
        print("Weird")
    else:
        print("Not Weird")

这样不管输入的偶数是多少,都会输出Not Weird,奇数则输出Weird,完全匹配你的预期功能。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 11:22:43