答案頁 · 12 道題

Python 列舉練習答案

本頁彙整 Python 列舉 的 12 道練習。先做練習頁,再回到這裡核對準確答案和原因。

快速答案

本答案頁包含 Python 列舉 的 4 道選擇題、4 道填空題和 4 道輸出預測題,每題都給出準確答案和簡短解釋。

答案已完整展示,建議先嘗試作答,再用本頁核對。第一次練習最好從互動練習頁開始。

01 · 選擇題

Color.RED 是什麼?

  1. 一個類
  2. 一個字典
  3. 字串 red
  4. 列舉成員正確答案

答案: 列舉成員

為什麼: 列舉成員是唯一物件;字串儲存在 .value 中。

02 · 選擇題

這段程式列印出什麼?

from enum import Enum
class Color(Enum):
    RED = "red"
print(Color.RED.value)
  1. RED
  2. None
  3. Color.RED
  4. red正確答案

答案: red

為什麼: value 屬性回傳底層字串。

03 · 選擇題

走訪 Enum 會產生什麼?

  1. 只有值
  2. 整數索引
  3. 只有名稱
  4. 它的成員正確答案

答案: 它的成員

為什麼: 走訪會按定義順序產生成員物件。

04 · 選擇題

Color('green') 回傳什麼?

  1. Color.GREEN 成員正確答案
  2. ValueError
  3. 字串 green
  4. 新的列舉類

答案: Color.GREEN 成員

為什麼: 用值呼叫列舉會尋找對應成員。

05 · 填空題

補全列舉的基類。

from enum import Enum
class Color(____):
    RED = "red"

答案: Enum

為什麼: Enum 是命名成員的標準基類。

06 · 填空題

補全回傳底層值的屬性。

from enum import Enum
class Color(Enum):
    RED = "red"
print(Color.RED.____)

答案: value

為什麼: 成員把賦給它的值儲存在 .value 中。

07 · 填空題

補全回傳成員名稱的屬性。

from enum import Enum
class Color(Enum):
    RED = "red"
print(Color.RED.____)

答案: name

為什麼: 成員把標識符儲存在 .name 中。

08 · 填空題

補全按名稱尋找的鍵。

from enum import Enum
class Color(Enum):
    RED = "red"
print(Color["____"])

答案: RED

為什麼: 方括號按成員名稱尋找。

09 · 輸出預測

程式碼的輸出結果是什麼?

from enum import Enum
class Color(Enum):
    RED = "red"
print(Color.RED.name)

答案: RED

為什麼: name 屬性是標識符 RED。

10 · 輸出預測

螢幕上會顯示什麼?

from enum import Enum
class Color(Enum):
    RED = "red"
    GREEN = "green"
print(Color("green").value)

答案: green

為什麼: 按值尋找回傳 GREEN,它的值是 green。

11 · 輸出預測

這段程式碼會輸出什麼?

from enum import Enum
class Color(Enum):
    RED = "red"
    GREEN = "green"
print(len(list(Color)))

答案: 2

為什麼: 列舉有兩個成員,所以列表長度為二。

12 · 輸出預測

執行結果是什麼?

from enum import Enum
class Color(Enum):
    RED = "red"
print(Color.RED is Color.RED)

答案: True

為什麼: 列舉成員是單例,所以身份比較為真。

先試一遍題目

打開 Python 列舉 練習頁,用即時回饋回答同樣的 12 道題。

練習本課