Python3 入门教程
条件控制
本教程共 70 篇 · 第 16 篇 · 更新于 2026-07-22 · 约 2 分钟阅读
PythonPython3 入门教程条件控制if-elif-else三元表达式分支判断
16. 条件控制
本节目标:掌握 if/elif/else 的用法,学会三元表达式,让程序能根据不同情况做不同的事。
if 语句
程序最基础的能力就是「判断」。Python 用 if 语句实现:
age = 20
if age >= 18:
print("已成年")
注意两点:条件后面必须有冒号 :,下面的语句块要缩进 4 个空格。
if…else
有「是」就得有「否」:
age = 16
if age >= 18:
print("已成年")
else:
print("未成年")
if…elif…else
多个条件分支,用 elif(else if 的缩写):
score = 85
if score >= 90:
grade = "A"
elif score >= 80:
grade = "B"
elif score >= 70:
grade = "C"
elif score >= 60:
grade = "D"
else:
grade = "F"
print(f"等级: {grade}")
NotePython 从上往下判断,碰到第一个为
True的条件就执行对应的代码块,剩下的跳过。所以条件的顺序很重要。
age = 20
if age >= 6: # 这个条件先满足
print("teenager")
elif age >= 18:
print("adult") # 这行不会执行
条件的真假
Python 里这些值会被当作 False:
False本身0、0.0、0j- 空字符串
'' - 空列表
[]、空元组()、空字典{}、空集合set() None
其他一切值都当作 True。所以可以这样简写:
name = ""
if name:
print(f"你好, {name}")
else:
print("名字不能为空")
Tip不要跟
None做==比较,用is None:if user is not None: print(user.name)
条件嵌套
一个条件块里可以再套条件,但不建议嵌套超过三层,可读性会急剧下降。
x = 10
if x > 0:
if x % 2 == 0:
print("正偶数")
else:
print("正奇数")
else:
print("非正数")
复杂的嵌套逻辑,考虑拆成函数或者用更清晰的条件表达式改写。
三元表达式
简单的 if…else 可以写成一行:
# 传统写法
if age >= 18:
status = "成年"
else:
status = "未成年"
# 三元表达式
status = "成年" if age >= 18 else "未成年"
语法是:值A if 条件 else 值B。条件为真取值 A,否则取值 B。
Warning三元表达式适合简单场景。嵌套多个三元表达式会让代码变成天书:
# 不要这样写 result = a if x > 0 else (b if x == 0 else c)超过一个三元嵌套,乖乖用 if…elif…else。
猜数字练习
综合运用条件控制:
import random
number = random.randint(1, 100)
guess = 0
while guess != number:
guess = int(input("猜一个 1-100 的数字:"))
if guess < number:
print("猜小了")
elif guess > number:
print("猜大了")
else:
print("猜对了!")
来源:参考了 runoob「Python3 条件控制」、liaoxuefeng「条件判断」等,改写后所得。