Leçon 9 / 10 — Chapitre 1: POO : les fondamentaux
Plusieurs classes qui collaborent
Un objet peut avoir un attribut qui est lui-même un autre objet — deux classes distinctes qui collaborent, chacune responsable d'une seule chose.
class Client:
def __init__(self, nom):
self.nom = nom
class Commande:
def __init__(self, client, produit, quantite):
self.client = client
self.produit = produit
self.quantite = quantite
def resume(self):
return f"{self.client.nom} commande {self.quantite} x {self.produit}"
amina = Client("Amina")
commande = Commande(amina, "riz", 3)
print(commande.resume())
Ce code affiche Amina commande 3 x riz : Commande reçoit un objet Client complet (pas seulement son nom), stocké dans self.client. resume() accède ensuite à self.client.nom — un enchaînement d'attributs, comme pour un dictionnaire imbriqué (vu dans Python Intermédiaire), mais entre objets.
Cette séparation garde chaque classe simple et responsable d'une seule notion (Client gère un client, Commande gère une commande), plutôt que de tout regrouper dans une seule classe surchargée.
À vous de jouer : créez une classe Client et une classe Commande qui reçoit un objet Client en argument, puis affichez un résumé combinant les deux.
Continuez ce module
Débloquez les leçons restantes ainsi que la certification finale.
2 500 XOF / 3,81 € / 4,15 $
Débloquez les 87 leçons restantes de ce module
Votre paiement est vérifié avant l'activation de l'accès