Leçon 1 / 10 — Chapitre 1: POO : les fondamentaux
Créer une classe : class, __init__ et self
Une classe est un modèle pour créer des objets qui regroupent des données et des comportements liés. Un objet (ou instance) est une réalisation concrète de ce modèle.
class Produit:
def __init__(self, nom, prix):
self.nom = nom
self.prix = prix
riz = Produit("riz", 5)
print(riz.nom, riz.prix)
Ce code affiche riz 5. class Produit: définit le modèle. __init__ est une méthode spéciale appelée automatiquement à la création d'un objet — elle initialise ses attributs. self désigne l'objet en train d'être créé : self.nom = nom stocke l'argument nom reçu comme attribut de cet objet précis.
riz = Produit("riz", 5) crée un objet : Python appelle __init__(self, "riz", 5) en interne, self étant automatiquement l'objet riz — on ne le passe jamais explicitement à l'appel.
On peut créer plusieurs objets indépendants à partir de la même classe :
huile = Produit("huile", 8)
print(huile.nom, huile.prix)
riz et huile sont deux objets distincts, chacun avec ses propres valeurs de nom et prix, même s'ils partagent la même classe Produit.
À vous de jouer : créez une classe Produit avec nom et prix, puis créez deux objets différents et affichez leurs attributs.
À vous de jouer
À faireQue va afficher ce code ?
class Produit:
def __init__(self, nom, prix):
self.nom = nom
self.prix = prix
p = Produit("huile", 8)
print(p.prix)
Copiez ce code dans un environnement Python en ligne (Google Colab, Replit, ou tout autre) pour vérifier le résultat avant de répondre.
À vous de jouer
À faireQuel argument Python passe-t-il automatiquement en premier a init lors de la creation d'un objet, sans qu'on l'ecrive à l'appel ?
Copiez ce code dans un environnement Python en ligne (Google Colab, Replit, ou tout autre) pour vérifier le résultat avant de répondre.
💡 un mot-clé déjà vu dans la leçon