PASCAL YIM / apprendreClasses et objets en Python

OBJETS / 03 · EXPLICATION

self désigne l’objet de l’appel

Une méthode d’instance reçoit l’objet concerné dans son premier paramètre, nommé self par convention.

EXPLICATION DU CODE

c1.add(5) lie automatiquement self à c1. L’argument 5 est transmis à x : il n’est pas nécessaire d’écrire c1.add(c1, 5).

Exemple expliqué

  1. 1
    def add(self, x):
        self.memoire += x

    Ce bloc est une méthode à placer dans la classe. self.memoire désigne la mémoire de l’instance reçue ; x est l’argument à ajouter.

  2. 2
    c1.add(5)
    # équivaut ici à Calculatrice.add(c1, 5)

    La notation pointée fournit le premier argument. Avec c2.add(5), self désignerait c2 et la même méthode agirait sur un autre état.

  3. 3
    memoire = 10
    self.memoire = 10

    Dans une méthode, memoire est un nom local ; self.memoire est un attribut de l’objet. Le second est conservé et accessible après la fin de l’appel.

Exemple de référence · La consultation conserve le crédit de l’exercice.

CLASSE · Calculatrice

__init__(self, memoire_initiale)
add(self, x)

Calculatrice(10) ↙ ↘ Calculatrice(20)

INSTANCE · c1

memoire 10

self dans c1.add(5)
INSTANCE · c2

memoire 20

autre instance

c1.add(5) → self = c1 ; x = 5

La définition est commune ; les attributs d’instance sont propres à chaque objet.

Points essentiels

  • self n’est pas un mot-clé : son nom est une convention standard à respecter.
  • Il désigne l’instance courante, pas la classe entière ni une copie de l’objet.
  • self.attribut lit ou modifie une donnée de cette instance.
  • self.autre_methode() appelle une autre méthode sur cette même instance.

Parcours · chapitres

Calculatrice · Instances et self · Attributs et méthodes · Intérêts composés.

01 / Rappels de Python

02 / Classes et objets en Python

03 / Pandas et DataFrames

04 / Régression linéaire et métriques

05 / Régressions multiple et polynomiale

06 / Évaluer les modèles

07 / KNN et normalisation

Quiz de synthèse · 24 questions →Rejoindre une session →