Python-程序的分支结构

本文深入探讨Python中的分支结构,包括单分支、二分支及多分支结构的应用,并详细讲解条件判断与组合,以及如何处理程序运行中可能出现的异常,通过实例演示了异常处理的基本语法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

程序分支结构:根据判断条件结果而选择不同向前路径的运行方式

单分支结构

guess = eval(input());
if guess == 99:
    print("猜对了");

if True:
    print("条件正确");

二分支结构

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

if True:
    print("条件正确");
else:
    print("条件错误");

#紧凑形式:适用于简单表达式的二分支结构
#<表达式1> if <条件> else <表达式2>
guess = eval(input());
print("猜{}了".format("对" if guess==99 else "错"));

多分支结构

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

#运行结果
#输入:100 输出:输入的成绩属于级别D,结果错误

 注意:多条件之间的包含关系,变量取值范围的覆盖

条件判断及组合

条件判断
操作符描述
<小于
<=小于等于
>=大于等于
>大于
==等于
!=不等于
条件组合
操作符及使用描述
x and y两个条件x和y的逻辑与
x or y两个条件x和y的逻辑或
not x条件x的逻辑非

 

#多分支结构示例修改
score = eval(input());
if score >= 60 and score < 70:
    grade = "D";
elif score >= 70 and score < 80:
    grade = "C";
elif score >= 80 and score < 90:
    grade = "B";
elif score >= 90 and score <= 100:
    grade = "A";
else:
    grade = "Error";
    print("输入分数有误");
print("输入的成绩属于级别{}".format(grade));

#注意:else 后直接冒号,不能添加任何语句

程序的异常处理

示例1:

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

#运行结果:
#请输入一个整数:89
#7921

#请输入一个整数:ab
#输入的不是一个整数

示例2:

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

#运行结果:
#请输入一个整数:rr
#输入的不是一个整数

#请输入一个整数:12 3
#Traceback (most recent call last):
#  File "D:/Personal/Desktop/fenzhi.py", line 2, in <module>
#    num = eval(input("请输入一个整数:"));
#  File "<string>", line 1
#    12 3
#       ^
#SyntaxError: unexpected EOF while parsing

注意:标注异常类型后,仅响应此类异常;异常类型名字等同于变量名

try:
    num = eval(input("请输入一个整数:"));
    print(num**2);
except NameError:
    print("输入的不是一个整数");
except SyntaxError:
    print("输入参数无效");

#运行结果
#请输入一个整数:12 3
#输入参数无效

示例3:

try:
    num = eval(input("请输入一个整数:"));
    print(num**2);
except NameError:
    print("输入的不是一个整数");
else:
    print("输入数据正确");
finally:
    print("这儿的语句一定执行");

#运行结果
#请输入一个整数:99
#9801
#输入数据正确
#finally后的语句一定执行

#请输入一个整数:aa
#输入的不是一个整数
#finally后的语句一定执行

本文仅为学习Python记录,资料来源于中国大学MOOC《Python语言设计》—嵩天

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值