一、条件控制与 if 语句的核心概念
条件控制的本质是:程序根据一个或多个条件的 "真 / 假"(True/False),决定执行哪一段代码。if 语句是实现条件控制的核心语法,它有三种基本形式:单分支、双分支、多分支。
1. 单分支 if 语句(满足条件才执行)
语法:
python
运行
if 条件表达式:
满足条件时执行的代码块 # 注意缩进,Python用缩进区分代码块
示例:判断数字是否为正数
python
运行
num = 18
if num > 0: # 条件表达式:num大于0
print(f"{num} 是正数") # 满足条件时执行
输出 :18 是正数
2. 双分支 if-else 语句(二选一执行)
语法:
python
运行
if 条件表达式:
满足条件时执行的代码块
else:
不满足条件时执行的代码块
示例:判断数字是正数还是非正数
python
运行
num = -5
if num > 0:
print(f"{num} 是正数")
else:
print(f"{num} 不是正数")
输出 :-5 不是正数
3. 多分支 if-elif-else 语句(多选一执行)
语法:
python
运行
if 条件1:
满足条件1执行的代码块
elif 条件2:
满足条件2执行的代码块
# 可以有多个elif
else:
所有条件都不满足时执行的代码块
示例:判断成绩等级
python
运行
score = 85
if score >= 90:
print("优秀")
elif score >= 80: # 隐含条件:score < 90 且 score >=80
print("良好")
elif score >= 60:
print("及格")
else:
print("不及格")
输出 :良好
二、关键细节说明
-
条件表达式 :可以是直接的比较(>
、<、>=、<=、==、!=),也可以是逻辑运算(and、or、not),最终结果必须是 True/False。示例(逻辑运算):python
运行
age = 20 if 18 <= age < 60: # 等价于 age >=18 and age <60 print("成年且未退休") -
缩进规则 :Python 中没有大括号
{},而是用4 个空格(或 1 个 Tab) 缩进表示代码块归属,缩进错误会直接报错。❌ 错误示例(缩进不一致):python
运行
num = 3 if num > 0: print("正数") # 没有缩进,报错 -
空判断(pass) :如果条件满足但暂时不想执行任何代码,可用
pass占位,避免语法错误。python
运行
num = 0 if num == 0: pass # 占位,不执行任何操作 else: print("非零")
三、实际应用示例
写一个程序,根据输入的分数判断是否及格,且处理非数字输入的异常:
python
运行
try:
score = float(input("请输入你的分数:"))
if score < 0 or score > 100:
print("分数必须在0-100之间!")
elif score >= 60:
print("恭喜,及格了!")
else:
print("很遗憾,不及格。")
except ValueError:
print("输入错误,请输入数字!")
测试用例:
- 输入 88 → 输出:恭喜,及格了!
- 输入 59 → 输出:很遗憾,不及格。
- 输入 101 → 输出:分数必须在 0-100 之间!
- 输入 abc → 输出:输入错误,请输入数字!
总结
- if 语句是 Python 实现条件判断的核心,有单分支(if)、双分支(if-else)、多分支(if-elif-else)三种形式。
- 条件表达式最终要返回 True/False,可结合比较运算符和逻辑运算符使用。
- Python 通过缩进 区分代码块,缩进错误会导致程序报错,
pass可用于空代码块占位。