概念
在根据某一部的判断,有选择的执行相应的逻辑的一种结构。分为单分支、双分支和多分支。
单分支模式
if 条件表达式:
一条条的Python代码
一条条的Python代码
一条条的Python代码
......
双分支模式
if 条件表达式:
一条条的Python代码
一条条的Python代码
一条条的Python代码
······
else:
一条条的Python代码
一条条的Python代码
一条条的Python代码
······
多分支模式
if 条件表达式:
一条条的Python代码
一条条的Python代码
一条条的Python代码
······
elif 条件表达式:
一条条的Python代码
一条条的Python代码
一条条的Python代码
······
elif 条件表达式:
一条条的Python代码
一条条的Python代码
一条条的Python代码
······
······
else 条件表达式:
一条条的Python代码
一条条的Python代码
一条条的Python代码
······
以上代码中的条件表达式均为返回值为bool类型数据的表达式。如果返回值为True,则执行本层分支,为False则不执行。
需要注意的是,各个分支的条件表达式应当是互斥的,否则会报错。
举例
grade_1 = int(input('请输入你的成绩'))
if 0 <= grade_1 < 60:
print('你并没有及格,请再接再厉')
pass # 空语句,下一句话自动顶格
elif 60 <= grade_1 < 100:
print('你及格了!')
pass
elif grade_1 == 100:
print('你得到了满分!')
pass
else:
print('请输入正确的分数')
pass
print('程序运行结束')
只要满足其中一个分支,就会退出本层if语句结构。
if-else的嵌套使用
if-else的嵌套使用的常用场景为一个需要分阶段或者分层次做出不同的处理的场景。需要执行内部的if语句,首先要执行外部的if语句。举例:
score = int(input('请输入您的学分:'))
grade_2 = int(input('请输入您的成绩:'))
if score >= 10:
if grade_2 >= 80:
print('您可以升班了')
pass
else:
print('您的成绩不合格,不能升班')
pass
pass
else:
print('您的表现有点拉跨啊')
pass