开发学院

您的位置:首页>教程>正文

教程正文

Python3 if...elseif...else语句

Python 3 if...elseif...else语句

  一个if语句可与else语句结合。else 语句包含的代码,如果在 if 语句条件表达式计算为 0 或 FALSE值时该 else 块被执行。

  else语句是可选的声明,最多只有一个 else 语句。

语法

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

示例

#!/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)

  在上面的例子中,discount 计算是接收用户输入的值。如果amount小于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,它至多有一个语句, if 下面可以有任意数的 elif 语句。

语法

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

  Python不提供其他语言中的switch或case语句,但我们可以用if..elif...语句来模拟 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