Méthodes
Une méthode est une tâche qui appartient à une seule lampe. lamp.label() exécute cette tâche et vous renvoie les mots glow blue. Les parenthèses font partie de l'exécution : sans elles, la tâche n'a pas été exécutée et l'écran n'affiche pas glow blue. label utilise le mot déjà enregistré dans cette lampe. Rien n'est installé et aucun dossier n'est créé. Les lignes en retrait sous label forment la tâche. return renvoie les mots, mais ne les écrit pas à l'écran par lui-même.
class Lamp:
def __init__(self, color):
self.color = color
def label(self):
return "glow " + self.color
lamp = Lamp("blue")
print(lamp.label())
L'écran affiche glow blue, avec un espace entre glow et blue. label a construit ces mots à partir de la color enregistrée et les a renvoyés. print les écrit. Sans la ligne print, la méthode renverrait quand même les mots et l'écran resterait vide. lamp.color reste le mot enregistré blue. lamp.label() est la tâche qui place glow devant. Ce n'est pas la même lecture.
class Lamp:
def __init__(self, color):
self.color = color
def label(self):
return "glow " + self.color
one = Lamp("blue")
two = Lamp("red")
print(one.label())
print(two.label())
Deux lignes : d'abord glow blue, ensuite glow red. one et two sont deux lampes. Chaque label ne lit que le mot enregistré dans sa propre lampe. Construire la lampe red ne modifie pas la lampe blue : one.label() reste glow blue. Lamp est toujours le modèle, et one et two sont les objets. La tâche est la même, avec un mot enregistré différent à chaque fois.
Lamp.label() sans lampe ne figure dans aucun des deux programmes. Le modèle n'a pas de color enregistrée qui lui soit propre, et la tâche a besoin d'une lampe à lire. Le programme s'arrête à cette ligne, et l'erreur s'appelle TypeError. None n'est pas écrit et le programme ne continue pas. Vous construisez d'abord une lampe, puis vous écrivez les parenthèses sur cette lampe.
La page suivante porte sur l'héritage. Cette page exécute seulement une tâche sur une lampe, puis montre qu'une seconde lampe garde ses propres mots.
Une tâche sur la lampe
lamp.label() affiche glow blue. print écrit les mots, la méthode ne fait que les renvoyer. Une seconde lampe peut afficher glow red sans changer la première. Lamp.label() sans lampe s'arrête avec TypeError. La page suivante porte sur l'héritage.
🧠 Testez Vos Connaissances
Testez Vos Connaissances
Mettez-vous au défi avec ce quiz interactif et voyez à quel point vous comprenez le sujet
📝 Instructions
- Lisez chaque question attentivement
- Sélectionnez la meilleure réponse pour chaque question
- Vous pouvez refaire le quiz autant de fois que vous le souhaitez
- Votre progression sera affichée en haut