好文档 - 专业文书写作范文服务资料分享网站

python的三种选择语句 - 图文

天下 分享 时间: 加入收藏 我要投稿 点赞

.. . .. . .

本文将详细介绍Python语言中的三种选择语句:if语句,if/else语句和if/elif/else语句。对于每种语句,我们都提供了相应的流程图。与此同时,我们给出许多简单的示例程序,以帮助读者加深理解。

一、程序的控制结构

对于Python程序中的执行语句,默认时是按照书写顺序依次执行的,这时我们说这样的语句是顺序结构的。但是,仅有顺序结构还是不够的,因为有时候我们需要根据特定的情况,有选择地执行某些语句,这时我们就需要一种选择结构的语句。另外,有时候我们还可以在给定条件下往复执行某些语句,这时我们称这些语句是循环结构的。有了这三种基本的结构,我们就能够构建任意复杂的程序了。

对本文来说,我们要讨论的是三种基本程序结构中的选择结构,它们分别用if语句、if/else语句和if/elif/else语句实现。至于其它两种控制结构,我们会在后续的文章中陆续加以介绍。下面我们首先介绍if语句。

二、if语句

Python的if语句的功能跟其他语言的非常相似,都是用来判定给出的条件是否满足,然后根据判断的结果(即真或假)决定是否执行给出的操作。If语句是一种单选结构,它选择的是做与不做。它是由三部分组成:关键字if本身、测试条件真假的表达式(我们简称为条件表达式)和表达式结果为真(即表达式的值为非零)时要执行的代码。If语句的语法形式如下所示:

if 表达式 : 语句体

if语句的流程图如下所示:

图1 if语句的流程示意图

注意,if语句的语句体只有当条件表达式的值为真,即非零时,才会执行;否则的话,程序就会直接跳过这个语句体,去执行紧跟在这个语句体之后的语句。我们这里的语句体,既可

S. . . . . ..

.. . .. . .

以包含多条语句,也可以只有一条语句组成,但是语句体由多条语句组成时,要有统一的缩进形式,否则就会出现逻辑错误,即语法检查没错,但是结果却非预期。

现在我们用一个示例程序来演示一下if语句的用法。我们的程序很简单的,只要用户输入一个整数,如果这个数字大于6,那么就输出一行字符串;否则,直接退出程序。代码如下所示:

# -*- coding: cp936 -*-

#比较输入的整数是否大于6

integer = raw_input('请输入一个整数:') #取得一个字符串 integer = int(integer) #将字符串转换为整数 if integer > 6:

print '%d 大于6' %integer

当我们在IDEL中运行该程序时,结果如下所示:

图2 if语句示例程序运行结果

我们看到,如果输入的数字不大于6时,程序马上退出,也就是说,下列代码

print '%d 大于6' %integer

并没有执行;如果输入的数字大于6,才会执行上面的这行代码,以打印一行文字。

三、if/else语句

S. . . . . ..

.. . .. . .

上面的if语句是一种单选结构,也就是说,如果条件为真(即表达式的值为非零),那么执行指定的操作;否则就会跳过该操作。所以,它选择的是做与不做的问题。而if/else语句是一种双选结构,它选择的不是做与不做的问题,而是在两种备选行动中选择哪一个的问题。if/else语句由五部分组成:关键字if、测试条件真假的表达式、表达式结果为真(即表达式的值为非零)时要执行的代码,以及关键字else和表达式结果为假(即表达式的值为零)时要执行的代码。if/else语句的语法形式如下所示:

if 表达式 : 语句体1 else : 语句体2

if/else语句的流程示意图如下所示:

图3 if/else语句的流程示意图

从if/else语句的流程示意图中可以轻易看出,当条件为真(即表达式的值为非零)时,执行语句体1;当条件为假(即表达式的值为零)时,执行语句体2——也就是说,条件无论真假,它总要在两个语句体中选择一个执行,双选结构之称谓由此而来。

下面我们对上面的示例程序进行修改,以演示if/else语句的使用方法。我们的程序很简单的,只要用户输入一个整数,如果这个数字大于6,那么就输出一行信息,指出输入的数字大于6;否则,输出另一行字符串,指出输入的数字小于等于6。代码如下所示: # -*- coding: cp936 -*- #比较输入的整数是否大于6

integer = raw_input('请输入一个整数:') #取得一个字符串 integer = int(integer) #将字符串转换为整数 if integer > 6:

S. . . . . ..

.. . .. . .

print '%d 大于6' %integer else:

print '%d 小于或等于6' %integer

当我们在IDEL中运行该程序时,结果如下所示:

图4 if/else语句示例程序运行结果

我们看到,当输入的数字小于3,即条件表达式为假时,执行else字句中的打印语句: print '%d 小于或等于6' %integer

当输入的数字小于3,即条件表达式为假时,执行else字句中的打印语句: print '%d 大于6' %integer

但是无论如何,它总得在这两个打印语句中挑一个执行,它不可能两个都跳过。

四、if/elif/else语句

有时候,我们需要在多组动作中选择一组执行,这时就会用到多选结构,对于Python语言来说就是if/elif/else语句。该语句可以利用一系列条件表达式进行检查,并在某个表达式为真的情况下执行相应的代码。需要注意的是,虽然if/elif/else语句的备选动作较多,但是有且只有一组动作被执行,该语句的语法形式如下所示:

if 表达式1 : 语句体1

elif 表达式2 : 语句体2 ……

elif 表达式m :

S. . . . . ..

.. . .. . .

语句体m else : 语句体n

注意,最后一个elif子句之后的else子句没有进行条件判断,它实际上处理跟前面所有条件都不匹配的情况,所以通常将else语句所处理的条件称为默认条件,所以else字句必须放在最后。if/elif/else语句的示意图如下所示:

图5 if/elif/else语句的示意图

下面我们继续对上面的示例程序进行修改,以演示if/elif/else语句的使用方法。我们还是要用户输入一个整数,如果这个数字大于6,那么就输出一行信息,指出输入的数字大于6;如果这个数字小于6,则输出另一行字符串,指出输入的数字小于6;否则,指出输入的数字等于6。具体的代码如下所示: # -*- coding: cp936 -*-

#比较输入的整数是否大于6

integer = raw_input('请输入一个整数:') #取得一个字符串 integer = int(integer) #将字符串转换为整数

if integer > 6:

S. . . . . ..

python的三种选择语句 - 图文

.......本文将详细介绍Python语言中的三种选择语句:if语句,if/else语句和if/elif/else语句。对于每种语句,我们都提供了相应的流程图。与此同时,我们给出许多简单的示例程序,以帮助读者
推荐度:
点击下载文档文档为doc格式
2n7xe2eexx2xn8u9whcj4n25q6nxtf004iq
领取福利

微信扫码领取福利

微信扫码分享