ホームページ >バックエンド開発 >Python チュートリアル >Python でクラス メソッドを呼び出すときに「TypeError: Missing 1 required location argument: self」というメッセージが表示されるのはなぜですか?
エラー: メソッド呼び出しに自己がありません
クラス メソッドにアクセスしようとすると、開発者は「TypeError: Missing 1 required」というエラーが発生することがあります。位置引数: self。」この例外は、メソッド呼び出しに self パラメーターが欠落していることを示します。これは、Python のオブジェクト指向プログラミングの重要なコンポーネントです。
self について
Python では、selfパラメータは、メソッドを呼び出しているクラスのインスタンスを指します。これは、特定のオブジェクトの属性とメソッドへの参照を提供し、メソッドがオブジェクト固有のデータを操作およびアクセスできるようにします。
__init__ の役割
__init__ メソッド、一般にコンストラクターと呼ばれるこの関数は、クラスのオブジェクトが作成されるときに自動的に呼び出されます。その主な目的は、オブジェクトの属性を初期化して設定し、適切な初期化を保証することです。ただし、提供されたコード スニペットでは:
p = Pump.getPumps()
The Missing self
Pump のインスタンスを作成し、そのインスタンスで getPumps を呼び出す代わりに、コードは直接呼び出します。 Pump.getPumps()、__init__ メソッドをバイパスし、その結果、本質的な self が欠落しますパラメータ.
インスタンスの作成
クラス メソッドを正しく利用するには、まずクラスのインスタンスを作成する必要があります。これには、以下に示すように、クラス名の後にかっこを使用することが含まれます。
p = Pump() p.getPumps()
インスタンスを作成し、そのインスタンスで getPumps を呼び出すことにより、メソッドは self パラメーターにアクセスできるようになり、オブジェクトのデータに正しくアクセスできるようになります。およびメソッド。
以上がPython でクラス メソッドを呼び出すときに「TypeError: Missing 1 required location argument: self」というメッセージが表示されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。