023 程序的分支控制

一、概述

  • 单分支结构
  • 二分支结构
  • 多分支结构
  • 条件判断及组合
  • 程序的异常处理

二、单分支结构

根据判断条件结果而选择不同向前路径的运行方式

023-程序的分支控制-01.jpg?x-oss-process=style/watermark

2.1 单分支示例

if True:
    print("条件正确")
guess = eval(input("请输入你猜测的年龄:"))
if guess == 99:
    print("猜对了")
请输入你猜测的年龄:99
猜对了

三、二分支结构

根据判断条件结果而选择不同向前路径的运行方式

023-程序的分支控制-02.jpg?x-oss-process=style/watermark

3.1 二分支示例

if True:
    print("语句块1")
else:
    print("语句块2")
guess = eval(input())
if guess == 99:
    print("猜对了")
else:
    print("猜错了")
26
猜错了

3.2 紧凑形式

紧凑形式:适用于简单表达式的二分支结构

<表达式1> if <条件> else <表达式2>

guess = eval(input())

print("猜{}了".format("对" if guess == 99 else "错"))
26
猜错了

四、多分支结构

if <条件1>:
    <语句块1>
elif <条件2>:
    <语句块2>
    ……
else:
    <语句块N>

023-程序的分支控制-03.jpg?x-oss-process=style/watermark

  • 注意多条件之间的包含关系
  • 注意变量取值范围的覆盖
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("猜对了")
23
猜错了

六、程序的异常处理

6.1 异常处理

num = eval(input("请输入一个整数: "))
print(num**2)

# 当用户没有输入整数时,会产生异常,怎么处理?

023-程序的分支控制-04.jpg?x-oss-process=style/watermark

6.2 异常处理的基本使用

6.2.1 示例1

try:
    <语句块1>
except:
    <语句块2>
try:
    num = eval(input("请输入一个整数: "))
    print(num**2)
except:
    print("输入不是整数")
请输入一个整数: 234sdfr
输入不是整数

6.2.2 示例2

try:
    <语句块1>
except <异常类型>:
    <语句块2>
try:
    num = eval(input("请输入一个整数: "))
    print(num**2)
# 标注异常类型后,仅响应该异常
# 异常类型名字等同于变量
except NameError:
    print("输入不是整数")
请输入一个整数: sdf2
输入不是整数

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

猜你喜欢

转载自www.cnblogs.com/nickchen121/p/11185035.html