Python基础学习09--流程控制—条件判断(if ... elif ... else)
流程控制—条件判断
1、if语句
语法:
if 条件表达式: 语句1 语句2 语句3 ...
- 条件表达式就是计算结果必须为布尔值的表达式
- 表达式后面的冒号不能少
- 注意if后面的出现的语句,如果属于if语句块,则必须同一个锁紧等级
- 条件表达式结果为True执行if后面的缩进的语句块
var1 = 1 if var1: print("1 - if 表达式条件为 true") print(var1) var2 = 0 if var2: print("2 - if 表达式条件为 true") print(var2) print("Good bye!")
输出结果如下:
1 - if 表达式条件为 true 1 Good bye!
从结果可以看到由于变量 var2 为 0,所以对应的 if 内的语句没有执行。
总结:当条件表达式为 0,false,'',None 时,不执行其缩进语句
# if语句练习 grade = 80if grade >= 90: print('优秀!') if 90 > grade >= 80: print('良!') if 80 > grade >= 70: print('一般') if 70 > grade >= 60: print('及格') if grade < 60: print('不及格!')
良!
2、if ... else语句----双向分支
- 双向分支有两个分支,当程序执行到if ... else...语句的时候,一定会执行if或else中的一个,也仅执行一个
- 缩进问题,if和else一个层级,其余语句一个层级
语法:
if 条件表达式: 语句1 语句2 ... else: 语句1 语句2 .....
实例:
grade = 55 if grade >= 60: print('及格!') else: print('不及格!')
输出结果如下:
不及格!
3、if ... elif ...... else语句----多路分支
- 条件判断以 if 开头,其余的条件以 elif 开头,结尾的 else 表示不满足除了上面的条件以外的情况
- 每个条件表达式后面有个 :
- 每个条件表达式下面所对应的内容,均有缩进
- 多路分支,只会选择一路执行!
语法:
if 条件表达式1: 语句1 .... elif 条件表达式2: 语句1 ... elif 条件表达式3: 语句1 ... ..... else: 语句1 ....
实例:
# 我们对if的实例进行优化: grade = 77 if grade >= 90: print('优秀!') elif 90 > grade >= 80: print('良!') elif 80 > grade >= 70: print('一般') elif 70 > grade >= 60: print('及格') else: print('不及格!')
输出结果如下:
一般