首頁 >後端開發 >Python教學 >為什麼我在 Python 中收到「TypeError: Missing 1 required Positional Argument: 'self'」錯誤?

為什麼我在 Python 中收到「TypeError: Missing 1 required Positional Argument: 'self'」錯誤?

DDD
DDD原創
2024-12-17 17:00:13354瀏覽

Why Am I Getting the

理解「TypeError: Missing 1 required Positional Argument: 'self'」錯誤

在 Python中使用類別和物件時,您可能會遇到以下錯誤訊息:

TypeError: Missing 1 required positional argument: 'self'

當您呼叫時會出現此錯誤不提供 self 參數的類別方法。所有類別方法都需要 self 參數作為其第一個參數。

Python 如何初始化類別

要理解此錯誤,重要的是要知道當您建立一個類,建構方法(__init__)會被自動呼叫。此方法負責初始化物件的屬性。

呼叫類別方法

建立物件後,您可以呼叫其方法。這些方法可以存取物件的屬性和功能。但是,請記住,所有類別方法都需要 self 參數,該參數引用呼叫該方法的類別的實例。

排除錯誤

中您的程式碼範例:

class Pump:    
    def __init__(self):
        print("init")

    def getPumps(self):
        pass

p = Pump.getPumps()  # Error here
print(p)

發生錯誤是因為您在沒有提供self 參數的情況下呼叫getPumps () 。要修復它,您需要先建立Pump 類別的實例,然後在該實例上呼叫getPumps() 方法:

p = Pump()
p.getPumps()

現在,當您建立實例時將呼叫__init__ 建構函數, getPumps()方法將可以存取self 參數,從而允許它對類別的特定實例進行操作。

以上是為什麼我在 Python 中收到「TypeError: Missing 1 required Positional Argument: 'self'」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn