Python if else 让决策路径清晰

Python if else 根据条件真假选择执行哪个代码块。 当代码需要在两种结果之间做出选择(例如主要动作或兜底消息)时使用它。 它让分支保持清晰,这样需求变化时更容易调整。

Python If Else 示例:条件选择

输出:

输出将显示在这里...

输出:

运费: $7

示例解析

条件将订单总额与阈值比较,因此只有一个分支会输出。 Python 将比较结果评估为 TrueFalse,当条件为假时 else 成为默认分支。

  1. order_total >= 50 的结果为 False,因此选择 else 分支。
  2. 条件不为真,所以 if 分支被跳过。
  3. 输出表明执行了假分支并显示兜底信息。

常见错误

错误 1:用多个 if 代替 elif

status = "vip"

# 错误:两个判断各自独立执行
if status == "vip":
    price = 0
if status == "会员":
    price = 5
status = "vip"

# 正确:在 if/elif/else 链中只会执行一个分支
if status == "vip":
    price = 0
elif status == "会员":
    price = 5
else:
    price = 10

两个独立的 if 可能都会执行,后面的判断会覆盖前面的结果。

错误 2:用 ==None 比较。

token = None

# 错误:对象可以自定义相等性
if token == None:
    print("没有 token")
token = None

# 正确:None 是单例,使用 Is 比较身份
if token is None:
    print("没有 token")

is 可以避免自定义相等逻辑带来的误判,也更符合身份比较的意图。

错误 3:在 0 合法时依赖真值判断。

discount = 0

# 错误:0 合法但是假值
if discount:
    print(f"{discount}% 折扣")
discount = 0

# 正确:0 有意义时应检查 None
if discount is not None:
    print(f"{discount}% 折扣")

真值判断会把 0 视为 False,因此即使值合法也不会执行分支。

Python if else vs 条件表达式:怎么选

使用 if/else 当…使用条件表达式当…
分支内需要多条语句或有副作用。你只是在表达式中选择一个值。
可读性比简洁更重要。条件和取值都短且清晰。

经验法则:动作型逻辑用完整 if/else,简单赋值用条件表达式。

何时使用 Python if else

  • 当一个真/假决定控制两种不同动作或消息时使用。
  • 有多个有序条件且只需命中第一个时,用 elif
  • 对于大量固定分支,使用 match查找字典 更清晰。
  • 不要在表达式内做紧凑的值选择;条件表达式更简洁。

相关特性

elif 可以扩展决策链,match 适合处理多个固定分支,and/or 通过短路逻辑组合条件,只评估必要的检查。 当条件变长时,加上括号能明确优先级并减少错误。