pythonの関数内でselfパラメータをどのように呼び出すのか?
Pythonでは、selfパラメータは、関数の呼び出し時に渡される現在のオブジェクトへの参照を指します。クラス内で定義されたメソッドでは、最初のパラメータはselfでなければなりません。これは、現在のオブジェクトを参照するために使われます。
Pythonの関数内のself引数を呼び出すには、呼び出し方法で現在のオブジェクトを最初の引数として渡すだけです。
例えば、クラスPersonを持っているとします。このクラスには、say_helloという名前のメソッドが定義されており、このメソッドは、現在のオブジェクトのname属性と”Hello”文字列を出力します。
class Person:
def __init__(self, name):
self.name = name
def say_hello(self):
print(self.name, "Hello")
# 创建一个Person对象
person = Person("Alice")
# 调用say_hello方法
person.say_hello()
上記の例では、最初にPersonオブジェクトを作成し、その後say_helloメソッドを呼び出しました。say_helloメソッドを呼び出す際には、自動的にpersonオブジェクトが最初の引数として渡されます、すなわちself引数です。say_helloメソッドの定義では、selfを使用してpersonオブジェクトのname属性にアクセスしたり、他のメソッドを呼び出したりすることができます。
結果は「アリスこんにちは」となります。つまり、personオブジェクトのnameプロパティと「こんにちは」の文字列が出力されます。