食物语国服
1.81GB · 2025-12-05
在 Python 中,条件判断主要依靠 if、elif、else 三个关键字来实现。
本章将带你从零开始掌握 Python 的条件结构,并通过实例理解其背后的逻辑。
设想你写一个自动售票程序:
这就是典型的“根据条件执行不同操作”的逻辑。 程序不能只“计算”,它还要能“判断”。
Python 使用 if 语句进行条件判断,语法非常直观:
if 条件表达式:
代码块
age = 18
if age >= 18:
print("你已成年")
输出:
你已成年
如果条件不满足,程序直接跳过代码块,不执行。
当条件为假时,我们通常希望程序执行另一段代码,这就用到 else:
if 条件:
语句块1
else:
语句块2
age = int(input("请输入年龄:"))
if age >= 18:
print("你已成年")
else:
print("你未成年")
运行示例:
请输入年龄:16
你未成年
有时需要判断多个条件,例如根据分数给出等级:
if 分数 >= 90:
优
elif 分数 >= 80:
良
elif 分数 >= 60:
及格
else:
不及格
score = int(input("请输入成绩:"))
if score >= 90:
print("优秀")
elif score >= 80:
print("良好")
elif score >= 60:
print("及格")
else:
print("不及格")
运行示例:
请输入成绩:85
良好
在 Python 中,不仅仅是布尔值可以用作条件。 任何“可求值的对象”都能被判断真假:
| 表达式 | 结果 |
|---|---|
0, 0.0, '', [], {}, None | False |
| 其他值 | True |
name = ""
if name:
print("你输入了名字")
else:
print("名字不能为空")
输出:
名字不能为空
有时条件中还需要继续判断,可以嵌套使用 if。
age = int(input("请输入年龄:"))
if age >= 18:
gender = input("请输入性别(男/女):")
if gender == "男":
print("欢迎参加男士组比赛")
else:
print("欢迎参加女士组比赛")
else:
print("未成年组暂不参赛")
如果只是根据条件选择一个值,可以使用更简洁的写法:
结果 = 表达式1 if 条件 else 表达式2
age = 20
msg = "成年" if age >= 18 else "未成年"
print(msg)
输出:
成年
可以使用逻辑运算符 and、or、not 组合多个条件。
age = 20
score = 85
if age >= 18 and score >= 60:
print("符合条件")
if age < 18 or score < 60:
print("不符合要求")
is_vip = False
if not is_vip:
print("普通用户无法进入VIP区")
编写一个程序,判断某年是否为闰年。 规则如下:
year = int(input("请输入年份:"))
if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):
print(f"{year} 是闰年")
else:
print(f"{year} 不是闰年")
运行示例:
请输入年份:2024
2024 是闰年
score = int(input("请输入成绩:"))
if score >= 90:
print("表现优异,继续保持!")
elif score >= 80:
print("成绩良好,还有提升空间!")
elif score >= 60:
print("勉强及格,需加油!")
else:
print("不及格,请认真复习!")
输出示例:
请输入成绩:75
成绩良好,还有提升空间!
| 结构 | 作用 | 示例 |
|---|---|---|
if | 判断条件是否为真 | if age > 18: |
if...else | 条件为假时执行另一分支 | if cond: ... else: ... |
if...elif...else | 多条件判断 | if a>0 elif a==0 else |
| 嵌套 if | 条件中再判断 | if cond1: if cond2: |
| 条件表达式 | 简洁的单行判断 | a if cond else b |
掌握了条件判断,程序就能“有智慧”地做选择。