Débutant
🧠 Fondamentaux
10 XP
0 personnes ont réussi
Le constructeur __init__
Quand tu créés un objet, tu veux souvent lui donner des informations de depart. C'est le role de la méthode speciale __init__ (avec deux underscores de chaque cote). Elle est appelee automatiquement quand tu créés une instance.
Le premier paramètre de __init__ est toujours self. Ce mot représente l'objet lui-meme, celui qui est en train d'etre cree. Les paramètres suivants sont les valeurs que tu passes a la création.
Par exemple :
class Personne: def __init__(self, nom, age): self.nom = nom self.age = age
p = Personne('Alice', 30) p.nom vaut 'Alice' p.age vaut 30
self.nom = nom stocke la valeur dans l'objet. Sans self, la variable disparaitrait a la fin de __init__.
Crée une classe Livre avec un __init__ qui prend un titre et un auteur. Écris ensuite une fonction créer_livre(titre, auteur) qui crée et renvoie un Livre.
Exemple : l = créer_livre('Python', 'Guido') l.titre renvoie 'Python' l.auteur renvoie 'Guido'
Tests (3/4)
Titre correct
l = créer_livre('Python', 'Guido')
assert l.titre == 'Python'
Auteur correct
l = créer_livre('Python', 'Guido')
assert l.auteur == 'Guido'
Autre livre
l = créer_livre('Django', 'Adrian')
assert l.titre == 'Django' and l.auteur == 'Adrian'
+ 0 tests cachés
Indices (3 disponibles)
Solution officielle
class Livre:
def __init__(self, titre, auteur):
self.titre = titre
self.auteur = auteur
def creer_livre(titre, auteur):
return Livre(titre, auteur)