python中if和elif的區別
阿新 • • 發佈:2020-12-02
多個if語句是每次單獨判斷
比如:
例子一:
a = 5
if a < 6: #條件1
print(1)
if a < 7: #條件2
print(2)
else:
print(3)
條件1和條件2是獨立的,第一次判斷a的值小於6,所以打印出數字1,第二次判斷a的值小於7,所以打印出2。如果所有的if語句都判斷失敗,才會執行else後的語句,否則else語句不執行。
如果條件2修改為elif,結果就不同了
例子二:
#Python學習交流群:778463939 a = 5 if a < 6: #條件1 print(1) elif a < 7: #條件2 print(2) else: print(3)
這次條件1和條件2是相關的,也就是說,如果條件1判斷成功的話,條件2就不會繼續判斷了。反過來,如果條件1判斷失敗,那麼就會繼續判斷條件2.如果條件1和條件2都判斷失敗,那麼則執行else裡面的語句。
例子二的結果很明顯就是隻會打印出1。
當然把if和elif混合起來也是可以的,只不過這樣看起來怪怪的,可讀性也差
例子三:
a = 5
if a < 6:
print(1)
elif a < 4:
print(2)
if a < 7:
print(3)
else:
print(4)
結果是:1,3
應用場景:
-
如果你只想執行一個程式碼塊,那麼用if-elif-else結構吧;
-
如果你要執行多個程式碼塊,那麼就用多個if吧。(多條件同時滿足)