TypeError: 在方法呼叫中缺少必需的「self」參數
程式碼片段嘗試呼叫Pump 的getPumps() 方法類,而無需先建立該類別的實例。這會導致以下錯誤:
TypeError: getPumps() missing 1 required positional argument: 'self'
理解建構子和方法參數
在Python 中,在類別中定義方法時,第一個參數總是self ,它引用目前物件實例。這就是方法存取和操作特定於實例的資料的方式。
使用 __init__() 進行初始化
__init__() 方法是當實例的實例時呼叫的建構函式方法。類別已建立。它用於初始化物件的內部狀態。
在實例上呼叫方法
要在物件上呼叫方法,必須先建立該物件。這涉及到使用括號呼叫類別名稱(例如 p = Pump())來建立新物件。只有這樣你才能呼叫該實例上的方法,例如 p.getPumps()。
程式碼更新
要解決該錯誤,您需要建立一個實例呼叫 getPumps() 之前的 Pump 類別。更新後的程式碼:
class Pump: def __init__(self): print("init") def getPumps(self): pass # Create an instance of the Pump class p = Pump() # Now call the getPumps() method p.getPumps()
附加範例
為了清楚起見,這裡有一個更詳細的範例:
class TestClass: def __init__(self): print("init") def testFunc(self): print("Test Func") # Create an instance of the test class testInstance = TestClass() # Call the testFunc() method on the instance testInstance.testFunc()
輸出:
init Test Func
以上是為什麼呼叫 `getPumps()` 會導致 `TypeError: Missing required 'self' Argument in Method Call`?的詳細內容。更多資訊請關注PHP中文網其他相關文章!