- Published on
2.11.if条件
- Authors

- Name
- xiaobai
1.如果…就…
if的核心逻辑非常简单:如果某个条件成立(为 True),就执行相应的代码块。
2.基本语法结构
if 语句有三种基本形式:if, if-else, 和 if-elif-else。
2.1.形式一:简单的 if 语句
这是最基础的形式,只判断一种情况。
if 条件:
# 条件成立时执行的代码
示例:
age = 20
if age >= 18:
print("您已经成年了!")
输出:
您已经成年了!
因为 age >= 18 是 True,所以会执行 print 语句。
2.2.形式二:if-else 语句
判断两种情况:如果条件成立,执行代码块 A;否则(条件不成立),执行代码块 B。
if 条件:
# 条件成立时执行的代码
else:
# 条件不成立时执行的代码
示例:
temperature = 35
if temperature > 30:
print("今天天气很热!")
else:
print("今天天气不错。")
输出:
今天天气很热!
如果 temperature 是 25,那么输出就会是 "今天天气不错。"。
2.3.形式三:if-elif-else 语句
用于判断多种可能的情况。程序会按顺序检查每一个 elif 的条件,一旦某个条件为 True,就执行对应的代码块,然后跳出整个 if 结构。如果所有 if 和 elif 的条件都不满足,则执行 else 的代码块。
if 条件1:
# 条件1成立时执行的代码
elif 条件2:
# 条件2成立时执行的代码
elif 条件3:
# 条件3成立时执行的代码
# ... 可以有多个 elif
else:
# 所有以上条件都不成立时执行的代码
示例:
score = 85
if score >= 90:
print("成绩优秀!")
elif score >= 80:
print("成绩良好!")
elif score >= 60:
print("成绩及格!")
else:
print("成绩不及格!")
输出:
成绩良好!
程序会这样判断:
score >= 90? (85 >= 90) -> False,继续。score >= 80? (85 >= 80) -> True,执行print("成绩良好!"),然后结束整个判断。
3.关键要点和细节
3.1.缩进
Python 使用缩进来区分代码块,这是语法强制要求的。
- 通常使用 4 个空格 作为一个缩进级别。
- 同一个代码块内的语句必须有相同的缩进。
- 缩进错误会导致
IndentationError。
正确示例:
if True:
print("Hello,") # 缩进4个空格
print("World!") # 缩进4个空格
print("This is outside the if block.") # 没有缩进,不属于if代码块
错误示例:
if True:
print("Hello") # 会报错:IndentationError
3.2.条件表达式
if 后面的“条件”可以是很广泛的表达式,其结果会被判断为 True 或 False。
- 比较运算符:
==(等于),!=(不等于),>(大于),<(小于),>=(大于等于),<=(小于等于) - 逻辑运算符:
and(与),or(或),not(非) - 成员运算符:
in(在...内),not in(不在...内) - 其他可以产生布尔值的表达式或函数。
复杂条件示例:
age = 25
is_student = True
# 使用 and
if age >= 18 and is_student:
print("您是成年学生。")
# 使用 or
if age < 12 or age >= 65:
print("您可以享受优惠票价。")
# 使用 not
if not is_student:
print("您不是学生。")
# 使用 in
name = "Alice"
if name in ["Alice", "Bob", "Charlie"]:
print(f"你好,{name}!")
3.3.嵌套的 if 语句
你可以在一个 if 代码块内部再写另一个 if 语句。
num = 10
if num > 0:
print("数字是正数。")
if num % 2 == 0:
print("并且它是一个偶数。")
else:
print("并且它是一个奇数。")
else:
print("数字是零或负数。")
输出:
数字是正数。
并且它是一个偶数。
4.实战小例子
我们来写一个简单的程序,判断一个年份是否是闰年。 闰年的规则:
- 能被 4 整除,但不能被 100 整除。 或者
- 能被 400 整除。
year = 2024
if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):
print(f"{year}年是闰年。")
else:
print(f"{year}年不是闰年。")
输出:
2024年是闰年。
5.总结
| 结构 | 用途 | 何时使用 |
|---|---|---|
if | 判断一种情况 | 只需要在条件成立时做某事 |
if-else | 判断两种情况 | 非此即彼的选择 |
if-elif-else | 判断多种情况 | 多选一的情景(如成绩等级、菜单选择) |

