Python条件判断怎么写_ifelif逻辑完整示例【教学】

Python条件判断用if、elif和else按顺序执行,满足首个True条件即执行对应代码块并跳过其余;else仅在所有条件为False时执行,且必须位于最后。

Python条件判断用 ifelifelse 组合实现,核心是按顺序检查条件,一旦某个条件为 True 就执行对应代码块,其余跳过;只有前面所有条件都不满足时,才执行 else 分支。

基础结构:if-elif-else 三段式

这是最完整的逻辑写法,覆盖所有可能情况:

x = 75

if x >= 90:
    print("优秀")
elif x >= 80:
    print("良好")
elif x >= 70:
    print("中等")
elif x >= 60:
    print("及格")
else:
    print("不及格")

注意:
– 条件从高到低排列(如先判 ≥90,再判 ≥80),避免逻辑重叠或遗漏;
elif 可以有多个,也可没有;
else 最多一个,且必须在最后,不带条件。

常见写法变体与注意事项

实际开发中常根据需求简化结构:

  • 只用 if:适合独立判断,不互斥(比如同时检查多个状态)
  • if + else:二选一场景,如开关控制、奇偶判断
  • if + elif:至少两个互斥选项,但不强制全覆盖(例如只关心“大于100”和“小于0”,其余默认处理)
  • 嵌套 if:当某一分支内还需细分时使用,但建议少嵌套,优先用 elif 拉平逻辑

容易出错的细节提醒

初学者常踩这些坑:

  • 忘记英文冒号 : —— Python 语法强制要求,缺了直接报错
  • 缩进不一致 —— if/elif/else 下的代码块必须用相同缩进(推荐4个空格)
  • = 代替 == 判断相等 —— 单等号是赋值,会导致语法错误或逻辑错误
  • 条件顺序颠倒 —— 比如把 elif x >= 70 写在 elif x >= 80 前面,75 会误判为“中等”

实用小技巧:用 in 或 not in 简化判断

面对多个离散值,比连写一堆 or 更清晰:

grade = "B"

if grade in ["A", "B", "C"]:
    print("合格等级")
elif grade == "F":
    print("不合格")
else:
    print("等级无效")

同样适用于数字范围检查(配合 range)或字符串包含判断("error" in msg)。