分支结构是程序选择判断从而进行更复杂操作的基础结构。Python程序中的分支结构主要有if语句建立。
1.判断条件及组合
程序中的判断最常见的是使用操作关系符判断两个对象的关系并据此得到True或者False的返回结果在决定分支方向。因此在学习if分支前我们需要先学习一下Python中的关系操作符。
简单演示如下>>> 1 > 2False>>> 1 >> 1 >> 1 > 2False>>> 1 1True>>> 1 ! 1False>>> 0 False#0和False是等价的True>>> 1 True#任何非0和非空的类型都是TrueTrue>>> "1" >> "Python" >> "1" "1"#相同字符判断为TrueTrue
字符串是逐位比较两个字符串第一位字符的ASCII码谁大字符串就大不再比较后面的第一个字符相同就比第二个字符串以此类推需要注意的是空格的ascii码是32空(null)的ascii码是0。
Python使用not、and、or保留字对条件进行逻辑运算和组合。
not表示单个条件的否关系即某个条件为True则not True为False反之亦然and表示多个条件的与关系即只有所有的条件都为True时and所连接的整个表达式才为True否则都为Falseor表示多个条件的或关系即只要有一个条件为True则or所连接的整个表达式就是True。
演示如下>>> not 1False>>> False and True and TrueFalse>>> False or True or FalseTrue
2.单分支结构
用if保留字引导的语句建立。使用方法如下If
程序根据判断表达式的结果即True或是False来决定语句块是否要执行。如果结果为True则执行语句块否则不执行。
(程序演示较为复杂均默认采用IDLE编辑器演示)
演示如下if 1: print("第一条if语句被执行了")if 0: print("第二条if语句被执行了")#输出结果只有第一条if语句的语句块内容
第一条if语句被执行了
3.二分支结构
二分支结构是指两个分支必定执行其中一个由保留字if和else建立。使用方法如下If
else:
当判断表达式中的结果为True时语句块1会被执行语句块2不会被执行当判断表达式中的结果为False时语句块2会被执行语句块1不会被执行。
演示如下a eval(input("请输入0或者1"))if a: print("第一条if语句被执行了")else: print("第二条if语句被执行了")#输入0时输出结果为
请输入0或者10
第二条if语句被执行了#输入1时输出结果为
请输入0或者11
第一条if语句被执行了
二分支结构还有一种非常简洁的书写方式适合语句块1和语句块2都是非常简单的表达式时使用使用方法如下。 if else
演示如下a eval(input("请输入一个数字"))
take "" if a%2 else "不"print("这个数字{}是一个奇数".format(take))#输入1时
请输入一个数字1
这个数字是一个奇数#输入2时
请输入一个数字2
这个数字不是一个奇数
4.多分支结构
在程序运行过程中可能并不只有两种情况因此单分支结构和二分支结构显得不够灵活。运用elif保留字即可应对程序中更加复杂的情况使用方法如下if :
elif :
…
else:
其中你可以添加任意数量的elif分支。演示代码如下a eval(input("请输入成绩"))if a
在多分支结构中elif的数量由自己的实际需要增减。且对else没有强制要求可以不写。当未写else时多分支结构最后的执行参考单分支结构。