本文使用Python 3.11。
if语句的一般语法形式如下:
if 表达式1:` `语句块1``elif 表达式2:` `语句块2``else:` `语句块3
可有0个、1个或多个 elif 分支,可有0个或1个else 分支。
关键字 ‘elif’ 是 ‘else if’ 的缩写。
elif、else必须跟if一起使用,不能单独使用。
每个条件表达式后面要使用冒号(:)。
使用缩进来划分语句块,相同缩进数的语句在一起组成语句块。
从上到下逐个执行表达式,只有条件表达式的值为True时,才执行该分支的语句块。
无论有多少个分支,最多只执行一个分支,或者一个也不执行,不会同时执行多个分支。
当有多个分支的表达式同时满足,则只执行第一个与之匹配的语句块。
如果所有的表达式的值都为False,有else分支则执行else分支,没有else分支则不执行。
表达式可以是一个单一的值或变量,也可以是由运算符组成的复杂语句。
无论表达式的值是什么类型,if语句都能判断它是True或False。
判断表达式的True或False:
布尔类型(bool):只有两个值,分别是 True 和 False。
数字:0 、0.0 为False,其它值为True。
其它类型:空字符串、空列表、空元组、空字典、空值、空集合为False,其它非空为True。
"" #空字符串``[ ] #空列表``( ) #空元组``{ } #空字典``None #空值``set() #空集合
1 单分支if语句
单分支if语句由关键字if、条件表达式、语句块三部分组成。
单分支if语法格式如下:
if 表达式:` `语句块
代码示例:
x = 90``if x >= 90:` `print("A")
2 if…else语句
如果表达式1为True执行if分支语句块1,否则执行else分支语句块2。
if…else语句语法格式如下:
if 表达式1:` `语句块1``else:` `语句块2
代码示例:
x = 80``if x >= 90:` `print("A")``else:` `print("D")
3 if…elif语句
可以有多个elif分支。
从上往下依次判断表达式的值,为True则执行对应分支的语句块。
只执行第一个表达式为True的语句块。
所有的表达式都为False,则不执行。
语法格式如下:
if 表达式1:` `语句块1``elif 表达式2:` `语句块2``elif 表达式3:` `语句块3``…``elif 表达式n:` `语句块n
代码示例:
x = 50``if x >= 90:` `print("A")``elif x >= 80:` `print("B")``elif x >= 60:` `print("C")
4 if…elif…else语句
可以有多个elif分支。
从上往下依次判断表达式的值,为True则执行对应分支的语句块。
如果多个表达式满足条件,也只执行第一个表达式为True的语句块。
所有的表达式都为False,则执行else分支的语句块。
语法格式如下:
if 表达式1:` `语句块1``elif 表达式2:` `语句块2``elif 表达式3:` `语句块3``…``elif 表达式n:` `语句块n``else:` `语句块
代码示例:
x = 50``if x >= 90:` `print("A")``elif x >= 80:` `print("B")``elif x >= 60:` `print("C")``else:` `print("D")
5 if语句嵌套
if语句可以嵌套使用,即在if分支、elif分支、else分支的语句块中还可以使用if语句。
代码示例:
x = 50``if x >= 60:` `if x >= 90:` `print("A")` `elif x >= 80:` `print("B")` `else:` `print("C")``else:` `print("D")``
6 条件表达式
条件表达式也称为三元运算符。
条件表达式语法:
表达式2 if 表达式1 else 表达式3
表达式1为True,返回表达式2的值;表达式1为False返回表达式3的值。
x = 60``y = 80``a = x+10 if x > y else y-100``print(a)
使用if语句实现相同功能:
x = 60``y = 80``if x > y:` `a = x+10``else:` `a = y-100``print(a)
7 多重条件判断
多重条件判断需要用到and、or、not运算符。
A and B:A、B两个表达式的值必须同时为True才执行分支。
A or B:A、B两个表达式的值只要有一个为True就执行分支。
not A:A表达式的值为False就执行分支。
代码示例:
x = 140``y = '物理'``if 90 <= x <= 100 and y == '数学':` `print("数学:A")``elif 135 <= x <= 150 and y == '物理':` `print("物理:A")``else:` `print("非统计科目或成绩不是A~")
8 pass 语句
pass语句表示空语句,不做任何事情,一般起到占位作用。
if 语句不能为空,但如果暂时没有需要处理的逻辑,可使用 pass 语句占个位置,以方便以后处理。
x = 60``y = 80``if x > y:` `pass``else:` `a = y``
本文转自网络,如有侵权,请联系删除。
学习资源推荐
除了上述分享,如果你也喜欢编程,想通过学习Python获取更高薪资,这里给大家分享一份Python学习资料。
这里给大家展示一下我进的兼职群和最近接单的截图

😝朋友们如果有需要的话,可以V扫描下方二维码联系领取

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!
