Python程序设计
上QQ阅读APP看书,第一时间看更新

3.2.2 if-elif-else语句

3.2.2 if-elif-else语句

Python中的多分支选择结构使用if-elif-else语句。

1.if-elif-else语句的语法格式

if-elif-else语句的语法格式为:

说明:

1)if-elif-else语句的执行流程是:当程序运行到“if”时,首先判断“条件1”,如果其值为True,则执行“条件1为真时执行的语句块”,然后结束执行整个if-elif-else语句,执行后面的语句。

如果“条件1”的值为False,则判断“条件2”,如果其值为True,则执行“条件2为真时执行的语句块”,然后执行后面的语句。如果“条件2”的值为False,则继续向下判断其他条件的值。

如果所有条件的值都为False且有else子句,则执行else部分的“上面条件都不满足时执行的语句块”,然后执行后面的语句。

不管有几个分支语句块,只执行其中一个。

2)Python中用elif代替了else if,所以if语句的关键字为if-elif-else。

3)可以把if-elif-else结构放在另外一个if-elif-else结构中实现if语句的嵌套。

2.if-elif-else语句使用实例

例3-11】 铁路托运行李,规定每张客票托运费的计算方法是:行李重量不超过50kg时,每千克0.25元;超过50kg而不超过100kg时,超过部分每千克0.35元;超过100kg时,超过部分每千克0.45元。编写程序,输入行李重量,计算并输出托运费。

分析:设行李重量为wkg,应付托运费为x元,则运费公式为:

计算铁路托运费的程序用if-elif-else实现。

对于各分支的条件,应该先判断较小的数,然后判断较大的数,上面代码中的条件即是按从小到大的顺序。分支的条件也可以采用更加严格的逻辑表达式,程序如下:

例3-12】 某百货公司为了促销,采用购物打折扣的优惠办法,每位顾客一次购物:

1)在1000元以上者,按九五折优惠。

2)在2000元以上者,按九折优惠。

3)在3000元以上者,按八五折优惠。

4)在5000元以上者,按八折优惠。

编写程序,输入购物款数,计算并输出优惠价。

分析:设购物款数为x元,优惠价为y元,优惠价的计算公式为:

用if-elif-else语句写出程序: