Python 速查手冊

4.10 複合陳述 if elif else

ifelifelse 三個關鍵字 (keyword) 用來進行條件 (condition) 選擇, ifelif 後面都接條件,只要任一條件為真,直譯器 (interpreter) 就會執行底下的程式區塊 (block) ,其他部分會跳過,如果 ifelif 後面的條件都為假,直譯器才會執行最後 else 底下的程式區塊。

if 可以單獨使用,此例 if 後面直接放字面常數 (literal) True ,注意條件後要加上冒號,由於 True 即是真,因此會執行底下印出整數 1 的部分

if True:
    print(1)

#《程式語言教學誌》的範例程式
# http://kaiching.org/
# 檔名:if01.py
# 功能:示範 if 陳述
# 作者:張凱慶

於命令列執行以上程式,結果如下

$ python3 if01.py
1
$

ifelse 連用,當 if 後面的條件為假,就會執行 else 的部分,注意 else 後面不需要接條件,但是要接上冒號

if False:
    print(1)
else:
    print(2)

#《程式語言教學誌》的範例程式
# http://kaiching.org/
# 檔名:if02.py
# 功能:示範 if 陳述
# 作者:張凱慶

於命令列執行以上程式,結果如下

$ python3 if02.py
2
$

如果條件有多個, if 底下可有依條件數量不等的 elif ,注意 elif 後面的條件最後也要接上冒號

i = 3
if i == 1:
    print(1)
elif i == 2:
    print(2)
elif i == 3:
    print(3)

#《程式語言教學誌》的範例程式
# http://kaiching.org/
# 檔名:if03.py
# 功能:示範 if 陳述
# 作者:張凱慶

於命令列執行以上程式,結果如下

$ python3 if03.py
3
$

if 加上 elif ,最後如果要有處理以上皆非的情況,就在最底下加上 else ,注意 elseif-elif-else 最後的部分,假設 else 底下再出現 elif ,就會發生語法錯誤 (syntax error)

i = 5
if i == 1:
    print(1)
elif i == 2:
    print(2)
elif i == 3:
    print(3)
else:
    print(4)

#《程式語言教學誌》的範例程式
# http://kaiching.org/
# 檔名:if04.py
# 功能:示範 if 陳述
# 作者:張凱慶

於命令列執行以上程式,結果如下

$ python3 if04.py
4
$

相關教學影片

上一頁: 4.9 簡單陳述 nonlocal
Python 速查手冊 - 目錄
下一頁: 4.11 複合陳述 for in else
回 Python 教材首頁
回程式語言教材首頁