À quoi sert la méthode __init__ ? - Docstring

À quoi sert la méthode __init__ ?

La méthode __init__ est une méthode spéciale qui est appelée lors de la création d'une instance.

On peut l'utiliser pour initialiser un certain nombre d'attributs et / ou effectuer des opérations lors de l'instanciation d'une classe :

class Person:
    def __init__(self, prenom, nom, age):
        print("Initialisation de l'instance", self)
        self.prenom = prenom
        self.nom = nom
        self.age = age
        self.nationalite = "français"

patrick = Person(prenom="Patrick", nom="Michaud", age=27)
print(patrick.prenom, patrick.nom)
print(patrick.nationalite)

La méthode __init__ est une méthode spéciale, elle doit par exemple obligatoirement retourner None.

Vous ne pouvez donc pas utiliser l'instruction return à l'intérieur de cette méthode (à moins de retourner explicitement None) :

class Person:
    def __init__(self, prenom, nom, age):
        print("Initialisation de l'instance", self)
        self.prenom = prenom
        self.nom = nom
        self.age = age
        self.nationalite = "français"
        return self.nationalite

# TypeError: __init__() should return None, not 'str'
patrick = Person(prenom="Patrick", nom="Michaud", age=27)

On peut donc retourner None sans obtenir d'erreur, mais cela n'a pas vraiment d'intérêt :

class Person:
    def __init__(self, prenom, nom, age):
        print("Initialisation de l'instance", self)
        self.prenom = prenom
        self.nom = nom
        self.age = age
        self.nationalite = "français"
        return None

patrick = Person(prenom="Patrick", nom="Michaud", age=27)

Réservé aux membres abonnés

Inscris-toi

Pour pouvoir prendre des notes et ajouter des favoris tu dois être abonné à Docstring.

Voir les formules

Mes notes

Sauvegardé

Passages surlignés

Besoin d'aide ?

Essaie d'être le plus exhaustif possible en donnant suffisamment de détails pour qu'on puisse te répondre du premier coup 😉

Tu peux également visionner cette vidéo dans laquelle je t'explique comment poser ta question correctement et utiliser l'éditeur.

Tu souhaites nous remonter un bug ? Utilise-plutôt ce formulaire.

Cette fonctionnalité est réservée aux membres de la formule accompagnement de Docstring.

Aucun résultat.

Un problème sur le site ?

Aide-nous à améliorer Docstring en nous signalant un problème que tu as rencontré.

Que ce soit un bug sur une fonctionnalité ou une erreur dans une formation, on va pouvoir le corriger rapidement 😉

Page concernée

M'avertir par e-mail

Je veux être averti par e-mail lorsque ce bug est corrigé.