Python 簡易手冊

單元 15 - 條件運算式

條件運算式 (conditional expression) 主要用在依條件 (condition) 真或假二選一指派數值 (value) ,最早 Python 沒有條件運算式的語法,但由於條件運算式等於是把多行的 if-else 陳述 (statement) 寫在一行程式碼,可大幅縮短程式碼行數,所以後來就加入到 Pyhton 中。

單元 20 - if 陳述會詳細介紹 if-else 陳述的用法。

以下為簡單的例子

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
# 變數 a 依條件指派
a = 3 if False else 5

# 印出變數 a
print(a)

# 檔名: conditional_demo.py
# 說明: 《Python簡易手冊》的範例
# 網址: http://kaiching.org
# 作者: Kaiching Chang
# 時間: 2024 年 3 月

第 2 行,條件運算式是在指派陳述 (assignment statement) 後面直接加上關鍵字 (keyword) if ,判斷 if 後面的條件,如果為真,變數就會被指派成等號後面的數值,反之如果為假,變數會指派為 else 後面的數值

 1
 2
# 變數 a 依條件指派
a = 3 if False else 5

由於此例的條件是直接用 False ,條件為假,所以變數 a 會被指派為 else 後面的整數 5 ,下面第 5 行就是印出變數 a ,此例執行結果如下

> python conditional_demo.py
5
>

由於是用在指派陳述,所以條件運算式可以用來檢查指派的數值是否符合預期的型態 (type) ,例如

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
# 設定變數 a 為字串
a = "3"

# 如果變數 a 為整數就指派給變數 b
b = a if type(a) is int else 0

# 印出變數 b 的型態
print(type(b))

# 檔名: conditional_demo2.py
# 說明: 《Python簡易手冊》的範例
# 網址: http://kaiching.org
# 作者: Kaiching Chang
# 時間: 2024 年 3 月

第 5 行檢查變數 a 是否為整數,如果不是就指派為預設值 0

 4
 5
# 如果變數 a 為整數就指派給變數 b
b = a if type(a) is int else 0

這在檢查函數 (function) 或方法 (method) 的參數 (parameter) 型態很好用,下面印出變數 b 的型態名稱,此例執行結果如下

> python conditional_demo2.py
<class 'int'>
>

單元 44 - 函數與 return 陳述會詳細介紹如何定義函數,至於方法定義跟函數類似。

參考資料

上一頁 單元 14 - 指派陳述與指派運算式
回 Python 簡易手冊 首頁
下一頁 單元 16 - 位元運算子
回 Python 教材首頁
回程式語言教材首頁