1. 如果…就… #
if 根据条件是否为真决定执行哪段代码。
- 条件为假时,对应代码块被跳过。
2. 三种基本结构 #
- Python 提供
if、if-else、if-elif-else 三种基本分支结构。
2.1 if #
age = 20
if age >= 18:
print("已成年")
2.2 if-else #
- 条件为真执行
if 块,否则执行 else 块,二选一。
is_active = False
if is_active:
print("账号正常")
else:
print("账号已停用")
2.3 if-elif-else #
- 按顺序判断,第一个为真的分支执行后结束,不再检查后面的
elif。
status_code = 404
if status_code == 200:
message = "成功"
elif status_code == 404:
message = "资源不存在"
elif status_code >= 500:
message = "服务器错误"
else:
message = "其他错误"
print(message)
3. 缩进 #
- Python 用缩进表示代码块(通常 4 个空格),不是花括号。
if 下一行必须缩进,否则报 IndentationError。
if True:
print("在 if 块内")
print("在 if 块外")
4. 条件表达式 #
role = "admin"
user_id = 123
if role == "admin" or user_id == 1:
print("有管理权限")
if role not in ("guest", "banned"):
print("允许访问")
items = []
if items:
print("有数据")
5. 三元表达式 #
is_vip = True
discount = 0.8 if is_vip else 1.0
print(discount)
enabled = False
label = "启用" if enabled else "禁用"
print(label)
- 复杂逻辑仍用完整的
if-else,不要嵌套多层三元表达式。
6. 项目开发要点 #
elif 顺序很重要:把更具体、更严格的条件放前面(先判断 404,再判断 >= 500)。
- 优先用
elif 而不是多个独立 if:多分支互斥时,避免重复执行。
- 判断空值:
if user:、if not items: 比 if len(items) > 0: 更常见。
- 避免过深嵌套:超过 2~3 层考虑提前
return 或拆函数。
- 权限、状态码、表单校验:是项目里
if 最高频场景,保持分支清晰、命名明确。
- 不要用
if x == True:直接写 if x: 或 if is_active:。