所謂的條件,指的就是滿足什麼條件,允許做什麼事,不滿足時,是不允許做的。如共享單車,規定滿12周歲或以上才可以騎行,沒滿的則不被允許。三思而後行,再,斯可矣。Python的條件語句有if、if-else和elif語句三種。
9.1 if語句
如果判斷條件為True,就執行if語句內的內容,否則不執行。if的語法結構為:
if 判斷條件:
執行語句1
執行語句…
# ---年齡---
age = 12
if age >= 12:
print("已滿12歲,", end="")
print("可以騎共享單車了。")
9.2 if-else語句
如果if的判斷條件的結果為True,就執行裡面的語句,否則執行else內的語句。if-else的語法結構為:
if 判斷條件:
執行語句1
執行語句…
else:
執行語句1
執行語句…
# ---年齡---age = 12
if age >= 12:
print("可以騎共享單車,", end="")
print("去海邊看藍天白雲。")
else:
print("可惜騎不了共享單車,", end="")
print("因為我未滿12歲。")
9.3 if-elif語句
如果if的判斷條件1的結果為True,就執行裡面的語句,如果判斷條件2的結構為True,執行elif內的語句,否則執行else裡的語句。if-else的語法結構為:
if 判斷條件1:
執行語句1
執行語句…
elif 判斷條件2:
執行語句1
執行語句…
else:
執行語句1
執行語句…
# 年齡
age = 12
# 智慧型手機
android = False
iphone = True
if age >= 12 and android:
print("已滿12歲,", end="")
print("可惜沒有Android智慧型手機")
elif age >= 12 and iphone:
print("用IPhone手機進行掃碼騎行")
else:
print("年齡和智慧型手機,有一樣缺少,騎不了")
9.4 if嵌套語句
條件語句可以進行嵌套。
# 年齡
age = 12
# 智慧型手機
android = False
iphone = True
if age >= 12:
if android or iphone:
print("已滿12歲,", end="")
print("還有智慧型手機,可以騎行。")
else:
print("年齡滿足,可沒有智慧型手機,騎不了")
else:
print("可惜騎不了共享單車,", end="")
print("因為未滿12歲。")
9.5 三元運算符
三元運算又稱三目運算,是對簡單的條件語句的簡寫。
if 條件成立:
result = 「可騎行」
else:
result = 「不可騎行」
改成三元運算是:result =「可騎行」 if 條件成立else 「不可騎行」。滿足條件,執行前面的語句,不滿足,執行後面的語句。
# 年齡
age = 10
result = "可騎行" if age >= 12 else "不可騎行"
print(result)
9.6 switch-case
Python3 沒有switch-case語句,查看官方文檔說是可以用if-elseif-elseif…代替。實現switch-case需要被判斷的變量是可哈希的和可比較的,這與Python倡導的靈活性有衝突,所以沒有支持。如果確實有必要,可通過函數的字典的方式實現。
# 定義switch函數
def switch(item):
switcher = {
"Mon": 1,
"Tues": 2,
"Wed": 3,
"Thur": 4,
"Fri": 5,
"Sat": 6,
"Sun": 7
}
return switcher.get(item, "0")
# 調用switchprint(switch("Mon"))