04-02 程序的分支控制
_______egon新书来袭请看:https://egonlin.com/book.html
一、概述
- 单分支结构
- 二分支结构
- 多分支结构
- 条件判断及组合
- 程序的异常处理
二、单分支结构
根据判断条件结果而选择不同向前路径的运行方式
2.1 单分支示例
if True:
print("条件成立")
条件成立
三、二分支结构
根据判断条件结果而选择不同向前路径的运行方式
3.1 二分支示例
guess = eval(input("请输入你猜测的年龄:"))
if guess == 99:
print("猜对了")
请输入你猜测的年龄:99
猜对了
3.2 紧凑形式
紧凑形式:适用于简单表达式的二分支结构
<表达式1> if <条件> else <表达式2>
guess = eval(input())
print("猜{}了".format("对" if guess == 99 else "错"))
四、多分支结构
if <条件1>:
<语句块1>
elif <条件2>:
<语句块2>
……
else:
<语句块N>
- 注意多条件之间的包含关系
- 注意变量取值范围的覆盖
score = eval(input())
if score >= 60:
grade = 'D'
elif score >= 70:
grade = 'C'
elif score >= 80:
grade = 'B'
elif score >= 90:
grade = 'A'
print("输入成绩属于级别{}".format(grade))
五、条件判断及组合
5.1 条件判断
操作符 | 数学符号 | 描述 |
---|---|---|
< | < | 小于 |
<= | ≤ | 小于等于 |
>= | ≥ | 大于等于 |
> | > | 大于 |
== | = | 等于 |
!= | ≠ | 不等于 |
5.2 条件组合
用于条件组合的三个保留字
操作符及使用 | 描述 |
---|---|
x and y | 两个条件x和y的逻辑与 |
x or y | 两个条件x和y的逻辑或 |
not x | 条件x的逻辑非 |
5.3 条件判断及组合
guess = eval(input())
if guess > 99 or guess < 99:
print("猜错了")
else:
print("猜对了")
六、程序的异常处理
6.1 异常处理
num = eval(input("请输入一个整数: "))
print(num**2)
# 当用户没有输入整数时,会产生异常,怎么处理?
6.2 异常处理的基本使用
6.2.1 示例1
try:
<语句块1>
except:
<语句块2>
try:
num = eval(input("请输入一个整数: "))
print(num**2)
except:
print("输入不是整数")
6.2.2 示例2
try:
<语句块1>
except <异常类型>:
<语句块2>
try:
try:
num = eval(input("请输入一个整数: "))
print(num**2)
# 标注异常类型后,仅响应该异常
# 异常类型名字等同于变量
except NameError:
print("输入不是整数")
6.3 异常处理的高级使用
try:
<语句块1>
except:
<语句块2>
else:
<语句块3>
finally:
<语句块4>
finally
对应语句块4一定执行else
对应语句块3在不发生异常时执行
七、单元小结
- 单分支
if
二分支if-else
及紧凑形式 - 多分支
if-elif-else
及条件之间关系 not and or > >= == <= < !=
- 异常处理
try-except-else-finally