023 程序的分支控制

Posted nickchen121

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了023 程序的分支控制相关的知识,希望对你有一定的参考价值。

一、概述

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

二、单分支结构

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

技术图片

2.1 单分支示例

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

三、二分支结构

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

技术图片

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>

技术图片

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

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

技术图片

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

以上是关于023 程序的分支控制的主要内容,如果未能解决你的问题,请参考以下文章

Golang程序流程控制

第05章 程序控制结构

Golang程序流程控制

GoLang的流程控制

程序流程控制1 if 分支机构

流程控制分支结构