Python学习笔记:分支结构

1. 单分支结构

单分支结构即只有一个分支,如下,有两种方式实现

guess = eval(input())
if guess == 99:
    print("猜对了")
if True:
    print("条件正确")

2. 二分支结构

2.1定义

根据判断条件结果而选择不同向前路径的运行方式
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5bz9zzoq-1584351475543)(attachment:image.png)]

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

2.2二分支结构的紧凑形式

适用于简单表达式的二分支结构
<表达式1> if <条件> else <表达式2>
如果满足条件则执行表达式1,否则执行表达式2

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

3. 多分支结构

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RctavlWA-1584351475546)(attachment:image.png)]

多分支结构一定要注意条件的执行顺序,避免出现覆盖。

下面的代码是实现对不同分数分级,但是输入99却输出等级为D。是因为多分支的条件判断顺序错了,应该从大到小比较才能避免出现覆盖问题。

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))

修改条件顺序即可得到正确分级:

score= eval(input())
if score >= 90:
    grade = "A"
elif score >= 80:
    grade = "B"  
elif score >= 70:
    grade = "C"
elif score >= 60:
    grade = "D"
print("输入成绩属于级别{}".format(grade))

程序的三大控制结构:顺序结构、分支结构、循环结构

4. 条件判断及组合

4.1 条件判断操作符

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nQZ5yXp1-1584351475550)(attachment:image.png)]

4.2 条件组合操作符

and: 与
or: 或
not: 非

guess = eval(input())
if guess > 99 or guess < 99:
    print("猜错了")
else :
    print("猜对了")

5. 程序的异常处理

异常处理的基本使用:

try:
    <语句1>
except NameError:
    <语句2>

示例1

try :
    num= eval(input("请输入一个数字: "))
    print(num**2)
except NameError:
    print("输入不是数字")

异常处理的高级使用

try:
    <语句块1>
except :
    <语句块2>
else :
    <语句块3>
finally :
    <语句块4>

-finally对应语句块4一定执行
-else对应语句块3在不发生异常时执行
即先进行try对应的语句块1,若正常则进行else对应语句块3,再进行inally对应语句块4;
若出现异常,则进行except对应语句块2,再进行inally对应语句块4。

注意

本文为中国大学MOCC的《Python语言程序设计》课程(主讲老师:嵩天、黄天羽、礼欣)的学习笔记。如有侵权,立删。

发布了60 篇原创文章 · 获赞 53 · 访问量 3853

猜你喜欢

转载自blog.csdn.net/weixin_43412569/article/details/104904058