上QQ阅读APP看书,第一时间看更新
3.2 用if选择
if语句是流程控制中的选择结构,用于在程序中做选择,选择后会执行不同的程序。本节将介绍if语句的不同使用形式。
3.2.1 选择语句格式
if语句有多种形式,if…else是其中比较简单的一种。除此之外,还有if…elif…else,或者仅仅一个单独的if语句,但是没有单独的else语句。if…else语句的语法形式如下:
if expr: ...... ...... else: ...... ......
首先要注意,关键词语句的后面用冒号结束,Python用同一缩进表示同一代码块,因此这个冒号下面相同的缩进语句就是选择语句的代码块。
expr是判断条件,可以是任何表达式或函数的返回结果,结果的类型必须是布尔型(True或False)。当返回True时,执行if代码块中的语句;否则,执行else代码块中的语句。expr判断条件时常用的运算符如表3.1所示。
表3.1 判断条件时常用的运算符
if…else属于“二选一”执行,也有“多选一”执行的用法,就是if…elif…else,其表达的形式如下:
If expr1: ...... ...... elif expr2: ...... ...... else: ...... ......
expr1和expr2的意义和上面是一样的。当expr1返回True时,执行if代码块;否则继续判断expr2的返回,如果是True就执行expr2代码块中的语句;否则继续执行else代码块中的语句。当然,这种格式并不限于三选一,还可以有更多的选择分支,只需要多加elif语句便可。
3.2.2 选择语句详解
举例如下:
【示例3-1】
执行结果如图3.4所示。
图3.4 选择语句应用
3.2.3 选择语句的嵌套
选择语句的嵌套语法如下:
if expr1: ...... if expr2: ...... else: ...... elif expr4: ...... else: ......
我们看一下判断闰年的例子:
• 普通年能被4整除且不能被100整除的为闰年(如2004年就是闰年,1900年不是闰年)。
• 世纪年能被400整除的是闰年(如2000年是闰年,1900年不是闰年)。
下面演示:
【示例3-2】
结果如图3.5所示。
图3.5 嵌套选择语句应用