Python if...elif...else语句

else语句可以与if语句组合。 else语句在if语句中的条件表达式求值为0FALSE值时,则执行else语句中的代码块。

else语句是一个可选语句,在if之后可能只有一个else语句。

语法

if expression:
    statement(s)
else:
    statement(s)

流程图

示例

下面通过一个示例演示 if...else 语句的用法 -

#!/usr/bin/python3

amount = int(input("Enter amount: "))

if amount<1000:
   discount = amount*0.05
   print ("Discount",discount)
else:
   discount = amount*0.10
   print ("Discount",discount)

print ("Net payable:",amount-discount)

在上述示例中,根据输入量计算折扣。 如果金额低于1000,折扣率为5%,如果超过10000,折扣率为10%

当执行上述代码时,会产生以下结果 -

Enter amount: 600
Discount 30.0
Net payable: 570.0

Enter amount: 1200
Discount 120.0
Net payable: 1080.0

elif语句

elif语句允许检查多个表达式是否为TRUE,并在其中一个条件求值为TRUE时立即执行对应代码块。

else语句类似,elif语句是可选的。 但是,与else语句不同的是,else语句最多可以有一个语句,在if之后可以有任意数量的elif语句。

语法

if expression1:
    statement(s)
elif expression2:
    statement(s)
elif expression3:
    statement(s)
else:
    statement(s)

Python不像其他编程语言那样提供switchcase语句,但是可以使用if..elif...else语句来模拟switch case,如下所示:

示例

#!/usr/bin/python3

amount = int(input("Enter amount: "))

if amount<1000:
   discount = amount*0.05
   print ("Discount",discount)
elif amount<5000:
   discount = amount*0.10
   print ("Discount",discount)
else:
   discount = amount*0.15
   print ("Discount",discount)

print ("Net payable:",amount-discount)

当执行上述代码时,会产生以下结果 -

Enter amount: 600
Discount 30.0
Net payable: 570.0

Enter amount: 3000
Discount 300.0
Net payable: 2700.0

Enter amount: 6000
Discount 900.0
Net payable: 5100.0

上一篇: Python决策 下一篇: Python循环