else
語句可以與if
語句組合。 else
語句在if
語句中的條件表示式求值為0
或FALSE
值時,則執行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
語句允許檢查多個表示式是否為TRUE
,並在其中一個條件求值為TRUE
時立即執行對應程式碼塊。
與else
語句類似,elif
語句是可選的。 但是,與else
語句不同的是,else
語句最多可以有一個語句,在if
之後可以有任意數量的elif
語句。
語法
if expression1:
statement(s)
elif expression2:
statement(s)
elif expression3:
statement(s)
else:
statement(s)
Python不像其他程式設計語言那樣提供switch
或case
語句,但是可以使用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