python的三种选择语句Word文档下载推荐.docx
- 文档编号:14850337
- 上传时间:2022-10-25
- 格式:DOCX
- 页数:7
- 大小:42.63KB
python的三种选择语句Word文档下载推荐.docx
《python的三种选择语句Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《python的三种选择语句Word文档下载推荐.docx(7页珍藏版)》请在冰豆网上搜索。
Python的if语句的功能跟其他语言的非常相似,都是用来判定给出的条件是否满足,然后根据判断的结果(即真或假)决定是否执行给出的操作。
If语句是一种单选结构,它选择的是做与不做。
它是由三部分组成:
关键字if本身、测试条件真假的表达式(我们简称为条件表达式)和表达式结果为真(即表达式的值为非零)时要执行的代码。
If语句的语法形式如下所示:
if表达式:
语句体
if语句的流程图如下所示:
图1if语句的流程示意图
注意,if语句的语句体只有当条件表达式的值为真,即非零时,才会执行;
否则的话,程序就会直接跳过这个语句体,去执行紧跟在这个语句体之后的语句。
我们这里的语句体,既可以包含多条语句,也可以只有一条语句组成,但是语句体由多条语句组成时,要有统一的缩进形式,否则就会出现逻辑错误,即语法检查没错,但是结果却非预期。
现在我们用一个示例程序来演示一下if语句的用法。
我们的程序很简单的,只要用户输入一个整数,如果这个数字大于6,那么就输出一行字符串;
否则,直接退出程序。
代码如下所示:
#-*-coding:
cp936-*-
#比较输入的整数是否大于6
integer=raw_input('
请输入一个整数:
'
)#取得一个字符串
integer=int(integer)#将字符串转换为整数
ifinteger>
6:
print'
%d大于6'
%integer
当我们在IDEL中运行该程序时,结果如下所示:
图2if语句示例程序运行结果
我们看到,如果输入的数字不大于6时,程序马上退出,也就是说,下列代码
并没有执行;
如果输入的数字大于6,才会执行上面的这行代码,以打印一行文字。
三、if/else语句
上面的if语句是一种单选结构,也就是说,如果条件为真(即表达式的值为非零),那么执行指定的操作;
否则就会跳过该操作。
所以,它选择的是做与不做的问题。
而if/else语句是一种双选结构,它选择的不是做与不做的问题,而是在两种备选行动中选择哪一个的问题。
if/else语句由五部分组成:
关键字if、测试条件真假的表达式、表达式结果为真(即表达式的值为非零)时要执行的代码,以及关键字else和表达式结果为假(即表达式的值为零)时要执行的代码。
if/else语句的语法形式如下所示:
语句体1
else:
语句体2
if/else语句的流程示意图如下所示:
图3if/else语句的流程示意图
从if/else语句的流程示意图中可以轻易看出,当条件为真(即表达式的值为非零)时,执行语句体1;
当条件为假(即表达式的值为零)时,执行语句体2——也就是说,条件无论真假,它总要在两个语句体中选择一个执行,双选结构之称谓由此而来。
下面我们对上面的示例程序进行修改,以演示if/else语句的使用方法。
我们的程序很简单的,只要用户输入一个整数,如果这个数字大于6,那么就输出一行信息,指出输入的数字大于6;
否则,输出另一行字符串,指出输入的数字小于等于6。
else:
%d小于或等于6'
图4if/else语句示例程序运行结果
我们看到,当输入的数字小于3,即条件表达式为假时,执行else字句中的打印语句:
当输入的数字小于3,即条件表达式为假时,执行else字句中的打印语句:
但是无论如何,它总得在这两个打印语句中挑一个执行,它不可能两个都跳过。
四、if/elif/else语句
有时候,我们需要在多组动作中选择一组执行,这时就会用到多选结构,对于Python语言来说就是if/elif/else语句。
该语句可以利用一系列条件表达式进行检查,并在某个表达式为真的情况下执行相应的代码。
需要注意的是,虽然if/elif/else语句的备选动作较多,但是有且只有一组动作被执行,该语句的语法形式如下所示:
if表达式1:
elif表达式2:
……
elif表达式m:
语句体m
语句体n
注意,最后一个elif子句之后的else子句没有进行条件判断,它实际上处理跟前面所有条件都不匹配的情况,所以通常将else语句所处理的条件称为默认条件,所以else字句必须放在最后。
if/elif/else语句的示意图如下所示:
图5if/elif/else语句的示意图
下面我们继续对上面的示例程序进行修改,以演示if/elif/else语句的使用方法。
我们还是要用户输入一个整数,如果这个数字大于6,那么就输出一行信息,指出输入的数字大于6;
如果这个数字小于6,则输出另一行字符串,指出输入的数字小于6;
否则,指出输入的数字等于6。
具体的代码如下所示:
elifinteger<
%d小于6'
%d等于6'
图6if/elif/else语句示例程序运行结果
上面介绍了三种选择语句的基本用法,接下来我们将介绍这些选择结构的结合方式,以及使用选择语句时的注意事项,包括缩进和表达式方面的注意事项。
五、选择结构的结合方式
一般说来,结构化编程中的三种基本结构:
顺序结构、选择结构和循环结构的结合方式有两种,一种是堆叠方式,另一种是嵌套方式。
堆叠方式比较简单,它把各种结构一个一个罗列在一起就行了,比如我们可以把一个选择结构中的if语句跟顺序结构堆叠在一起,如下所示:
图7顺序结构和选择结构的堆叠
我们看到,因为三种基本结构都是单入口和单出口(通常用一个小圆圈表示),所以堆叠时只要把一个结构的出口连接到另一个结构的入口就行了。
至于嵌套组合方式,就是用一种结构替换同种结构中的语句体(我们通常用一个矩形框表示),下图表示的是把一个选择结构中的if语句嵌套到另一个if语句中:
图8if语句的嵌套
观察上图,不难发现,上面的嵌套实际上就是把一个if结构中的语句体(矩形框)替换为另一个if结构。
其他结构的嵌套与之类似,在这里不再一一列举。
现在举一个例子来说明嵌套的应用。
我们要将用户输入的数字跟一个整数进行比较,并输出比较结果。
这本来可以用if/elif/else语句来完成的,但是为了演示选择结构的嵌套,我们这里用if/else语句的嵌套来实现,代码如下所示:
#将输入的数字跟6进行比较
ifinteger<
图9if/else嵌套语句示例程序运行结果
六、语句体的缩进问题
需要说明的是,嵌套时一定要注意缩进问题。
C语言是用花括号{}来区分语句体,但是Python的语句体是用缩进形式来表示的,如果缩进不正确,会导致逻辑错误。
举例来说,如果我们让用户输入一个数字,如果数字为偶数,则打印两行信息,一行说明数字除以2余数为零,另一行说明判断结果。
具体代码如下所示:
#判断输入的数字是否为偶数
if0==integer%2:
\n%d除以2余数为零;
所以,%d是个偶数'
图10正确缩进的结果
如果我们改变上面程序中的if语句的第二条打印语句的缩进形式,比如改为:
我们看看运行结果如何:
图11错误的缩进将导致逻辑错误
如图所示,这里出现了明显的逻辑错误。
由于Python通过缩进来区分语句体的界限,所以当上例中的第二个打印语句不缩进后,已经在if语句的控制范围之外,所以无论if语句的条件是否为真,它都会执行。
七、选择语句中的条件表达式
现在,我们对选择语句中的条件表达式进行必要的介绍。
三种选择语句中,条件表达式都是必须可少的组成部分。
当条件表达式的值为零时,表示条件为假;
当条件表达式的值为非零时,表示条件为真。
那么哪些表达式可以作为条件表达式呢?
基本上,最常用的是关系表达式和逻辑表达式,如:
ifa==xandb==y:
print‘a=x,b=y’
除此之外,条件表达式可以是任何数值类型表达式,甚至字符型也可以:
图12用字符作为条件表达式的情形
八、小结
本文详细介绍了Python中的三种选择语句。
当我们初接触这些选择结构的时候,最好多画流程图,这对于理解程序的逻辑极有帮助。
另外,上机实习也是必不可少的,本文中的示例程序都是在IDEL环境中演示的,有关IDEL的使用方法,读者可以参考前面的“循序渐进学Python之IDLE篇”一文。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- python 选择 语句