快速答案
本答案頁包含 Python 類與物件 的 4 道選擇題、4 道填空題和 4 道輸出預測題,每題都給出準確答案和簡短解釋。
答案已完整展示,建議先嘗試作答,再用本頁核對。第一次練習最好從互動練習頁開始。
哪個方法負責初始化新物件?
答案: __init__
為什麼: 建立實例時會自動執行 __init__。
方法裡的 self 指向什麼?
答案: 目前實例
為什麼: self 是呼叫該方法的那個物件。
怎樣建立 Order 的實例?
答案: Order("latte", 4.5)
為什麼: 像呼叫函式一樣呼叫類,就能建立實例。
什麼是屬性?
答案: 儲存在物件上的資料
為什麼: 屬性儲存某個物件的狀態。
補全初始化物件的方法名。
class Order:
def ____(self, drink):
self.drink = drink答案: __init__
為什麼: __init__ 是初始化方法。
補全屬性賦值,把 drink 參數儲存到實例上。
class Order:
def __init__(self, drink):
self.____ = drink答案: drink
為什麼: self.drink 會把參數儲存到實例上。
補全表達式,讓價格乘以數量。
class Order:
def total(self):
return self.price ____ self.quantity答案: *
為什麼: self.price * self.quantity 使用物件自己的屬性。
補全呼叫,建立一個 Order 實例。
order = ____("latte", 4.5)
print(order.price)答案: Order
為什麼: 類名後面加括號就會建立實例。
這段程式碼會輸出什麼?
class A:
def __init__(self, x):
self.x = x
print(A(3).x)答案: 3
為什麼: 實例把 3 儲存在 x 屬性中。
執行結果是什麼?
class A:
def value(self):
return 7
print(A().value())答案: 7
為什麼: 方法回傳 7。
這段程式列印出什麼?
class Order:
def __init__(self, price, quantity=2):
self.price = price
self.quantity = quantity
print(Order(4).price * Order(4).quantity)答案: 8
為什麼: 每個 Order 的價格是 4、數量是 2,乘積為 8。
程式碼的輸出結果是什麼?
class A:
pass
print(A().__class__.__name__)答案: A
為什麼: 類名是 A。
先試一遍題目
打開 Python 類與物件 練習頁,用即時回饋回答同樣的 12 道題。