1. 程式人生 > 實用技巧 >python中if和elif的區別

python中if和elif的區別

多個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吧。(多條件同時滿足)