Maison  >  Article  >  développement back-end  >  Comprendre le mot-clé self en Python

Comprendre le mot-clé self en Python

PHPz
PHPzoriginal
2024-02-20 11:27:06547parcourir

Comprendre le mot-clé self en Python

Compréhension et exemples de self en Python

En Python, self est un paramètre spécial utilisé pour représenter l'objet instance de la classe elle-même. Grâce à self, nous pouvons accéder aux variables membres et aux méthodes de la classe dans la méthode de classe. Dans cet article, j'expliquerai le rôle du soi et comment l'utiliser correctement pour accéder aux membres d'une classe.

Tout d’abord, comprenons le concept de soi. En Python, lors de la définition d'une classe, le premier paramètre est généralement self. Le paramètre self pointe vers l’objet instance de la classe elle-même. Lorsque nous créons un objet instance d'une classe et appelons une méthode de la classe, Python transmet automatiquement l'objet instance en tant que paramètre à self. Grâce à self, nous pouvons accéder et modifier les variables membres de l'objet instance dans la méthode.

Voici un exemple simple qui montre comment utiliser self pour accéder aux variables membres d'une classe :

class Person:
    def __init__(self, name):
        self.name = name

    def hello(self):
        print("Hello, my name is", self.name)

p = Person("Alice")
p.hello()  # 输出:Hello, my name is Alice

Dans le code ci-dessus, nous définissons une classe Person qui a une variable membre name et une méthode hello. Dans la méthode hello, nous accédons à la variable membre name de l'objet instance via self.name.

De plus, nous pouvons également utiliser self pour appeler d'autres méthodes de la classe. Voici un exemple qui montre comment appeler une méthode au sein d'une autre méthode :

class Calculator:
    def __init__(self, num1, num2):
        self.num1 = num1
        self.num2 = num2

    def add(self):
        return self.num1 + self.num2

    def multiply(self):
        return self.num1 * self.num2

    def calculate(self):
        sum = self.add()
        product = self.multiply()
        print("Sum:", sum)
        print("Product:", product)

calc = Calculator(5, 3)
calc.calculate()

Dans le code ci-dessus, nous avons défini une classe Calculator qui a trois méthodes : ajouter, multiplier et calculer. Dans la méthode calculate, nous utilisons self.add() et self.multiply() pour appeler d'autres méthodes de la classe.

Il convient de noter que lors du passage de l'objet instance à self, il n'est pas nécessaire de l'écrire explicitement. Python transmet automatiquement l'objet d'instance à soi. Par exemple, lors de l'appel de p.hello(), p sera automatiquement transmis à self, ce qui équivaut à p.hello(p).

De plus, il convient de noter que self n'est utilisé que dans les méthodes de classe. Nous ne pouvons pas utiliser self pour accéder aux variables membres d'une classe ailleurs dans la classe, comme dans le constructeur de la classe ou dans une méthode statique de la classe. À ces endroits, nous devons utiliser des objets d’instance pour accéder aux variables membres de la classe.

Pour résumer, self est un paramètre spécial en Python, qui est utilisé pour représenter l'objet instance lui-même de la classe. Grâce à self, nous pouvons accéder aux variables membres et aux méthodes de la classe dans la méthode de classe. Grâce à la démonstration de l'exemple de code, je crois que chacun a une pleine compréhension de soi et sait comment s'utiliser correctement dans ses propres programmes Python.

Remarque : les exemples ci-dessus servent uniquement à illustrer le rôle de soi. L'utilisation réelle peut impliquer une logique et des fonctions plus complexes.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn