程序的分支结构
单分支结构、二分支结构、多分枝结构
单分支结构
根据判断条件结果而选择不同向前路径的运行方式。
if<条件>:
<语句块>
实例:
guess=eval(input())
if guess==99:
print("猜对了")
二分支结构
根据判断条件结果而选择不同向前路径的运行方式。
if<条件>:
<语句块1>
else:
<语句块2>
实例:
guess=eval(input())
if guess==99:
print("猜对了")
else:
print("猜错了")
紧凑形式:适用于简单表达式的二分支结构
<表达式1>if<条件>else<表达式2>
guess=eval(input())
print("猜{}了".format("对" if guess==99 else "错"))
表达式不支持带=的语句
多分枝结构
根据多个条件来选择不同向前路径的运行方式。
if<条件>:
<语句块1>
elif:
<语句块2>
......
else:
<语句块n>
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))
条件判断及组合
guess=eval(input())
if guess>99 or guess<99:
print("猜错了")
else:
print("猜对了")
程序的异常处理
异常处理的基本使用:
try:
<语句块1>
except:
<语句块2>
try:
num=eval(input("请输入一个整数"))
print(num**2)
except:
print("输入的不是整数")
异常处理的高级使用:
try:
<语句块1>
except:
<语句块2>
else: 对应的语句块3在不发生异常时执行
<语句块3>
finally: 对应的语句块4一定执行
<语句块4>
例 身体质量指数BMI
height,weight=eval(input("请输入身高(米)和体重(公斤)【逗号隔开】:"))
bmi=weight/pow(height,2)
print("BMI数值为:{:.2f}".format(bmi))
who=""
if bmi <18.5:
who,nat="偏瘦","偏瘦"
elif 18.5<=bmi<24:
who,nat="正常","正常"
elif 24<=bmi<25:
who,nat="正常","偏胖"
elif 25<=bmi<28:
who,nat="偏胖","偏胖"
elif 28<=bmi<30:
who,nat="偏胖","肥胖"
else:
who,nat="肥胖"
print("BMI指标为:国际'{0}',国内'{1}'".format(who,nat))
注意多分枝之间的覆盖问题。读程序先看分支