赞
踩
目录
四、条件判断及组合( >、<、==、>=、<=、!=、and、or、not )
5.3 异常处理方式3( try-except-else-finally )
单分支结构程序框架:
if <条件> :
<语句块>
单分支结构流程图表示:
二分支松散结构程序框架:
if <条件> :
<语句块1>
else :
<语句块2>
二分支松散结构流程图表示:
二分支紧凑结构程序框架:
<表达式1> if <条件> else <表达式2>
注:表达式不同于语句,表达式1、2中不应出现赋值操作。
二分支紧凑结构流程图表示:
多分支结构程序框架:
if <条件1> :
<语句块1>
elif <条件2> :
<语句块2>
elif <条件3> :
<语句块3>
……
elif <条件N-1> :
<语句块N-1>
else :
<语句块N>
注:条件1 ~ N-1间有包含关系、先后关系。
多分支结构流程图表示:
操作符 | 判断说明 |
---|---|
> | 大于 |
< | 小于 |
== | 等于 |
>= | 大于等于 |
<= | 小于等于 |
!= | 不等于 |
关键字及使用 | 说明 |
---|---|
x and y | 条件 x、y 的逻辑与,返回 True 或 False |
x or y | 条件 x、y 的逻辑或,返回 True 或 False |
not x | 条件 x 的逻辑非,返回 True 或 False |
异常区别于错误,错误有算法逻辑错误、程序语法错误。
而异常是程序在运行过程中遇到的意料之外的情况,比如:打开一个不存在的文件、新建一个已经存在的文件、访问网络文件时突然断网、程序设计输入数值而用户故意输入字符串等。
没有异常处理的情况下,程序遇到异常会退出并提示异常信息。
try :
<语句块1>
except :
<语句块2>
注:若程序运行无异常,则执行语句块1,不执行语句块2;若执行语句块1的过程中遇到异常,则不再继续执行语句块1,跳转并执行语句块2(语句块2响应语句块1中遇到的所有异常)。
try :
<语句块1>
except <异常类型的名称> :
<语句块2>
注:
1. 若程序运行无异常,则执行语句块1,不执行语句块2;若执行语句块1的过程中遇到 except 指定的异常,则不再继续执行语句块1,跳转并执行语句块2(语句块2只响应语句块1中遇到的 except 指定的异常);若执行语句块1的过程中遇到非 except 指定的异常,则程序停止运行,并在异常语句处报错。
2. 异常类型的名称是Python中预定义的,可以直接使用,而不用自定义。
try :
<语句块1>
except :
<语句块2>
else :
<语句块3>
finally :
<语句块4>
注:
1. 语句块1无异常 -> 继续执行完语句块1 -> 跳转并执行完语句块3 -> 跳转并执行完语句块4
2. 语句块1发生异常 -> 终止执行语句块1 -> 跳转并执行完语句块2 -> 跳转并执行完语句块4
身体质量指数BMI(Body Mass Index),定义:
其中,BMI 为身体质量指数,单位千克每平方米(Kg/m2);M 为人的体重,单位千克(Kg);L 为人的身高,单位米(m)。
分类 | 国内BMI值(Kg/m2) | 国际BMI值(Kg/m2) |
---|---|---|
偏瘦 | < 18.5 | < 18.5 |
正常 | 18.5 ~ 24 | 18.5 ~ 25 |
偏胖 | 24 ~28 | 25 ~ 30 |
肥胖 | ≥ 28 | ≥ 30 |
代码示例:
- try :
- height, weight = eval(input("请输入你的身高数值(米)和体重数值(千克),用英文逗号隔开:"))
- bmi = weight / pow(height, 2)
- print("你的身体质量指数BMI为:{:.2f}".format(bmi))
- zn, en = "", ""
- if bmi < 18.5 :
- zn, en = "偏瘦", "偏瘦"
- elif 18.5 <= bmi < 24 :
- zn, en = "正常", "正常"
- elif 24 <= bmi < 25 :
- zn, en = "偏胖", "正常"
- elif 25 <= bmi < 28 :
- zn, en = "偏胖", "偏胖"
- elif 28 <= bmi < 30 :
- zn, en = "肥胖", "偏胖"
- else :
- zn, en = "肥胖", "肥胖"
- print("国内BMI指标为:{}\n国际BMI指标为:{}".format(zn, en))
- except :
- print("未输入正确的身高或体重,请重新运行程序再次输入。")
![](https://csdnimg.cn/release/blogv2/dist/pc/img/newCodeMoreWhite.png)
运行结果:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。