Dans cet exercice vous devez créer une classe Classe
(oui, c'est un peu meta...) qui permette de gérer les élèves créés avec la classe Eleve
.
La classe Classe
doit posséder une méthode statique ajouter_eleve
qui permette d'ajouter un élève avec un prénom et un nom.
Les instances d'élèves créées avec cette méthode statique doivent être ajoutées à une liste eleves
appartenant à Classe
.
Vous devez également modifier la représentation des instances créées à partir d'Eleve
pour qu'elles affichent le prenom et le nom des élèves.
Dans le cas de ce script, l'attribut eleves
devra donc être une liste qui contient une instance d'un élève qui s'appelle "John Smith" et cet attribut devra afficher la liste suivante :
>>> Classe.eleves
["John Smith"]
class Eleve: def __init__(self, prenom, nom): self.prenom = prenom self.nom = nom def __repr__(self): return f"{self.prenom.capitalize()} {self.nom.capitalize()}" class Classe: eleves = [] @staticmethod def ajouter_eleve(prenom, nom): Classe.eleves.append(Eleve(prenom, nom)) Classe.ajouter_eleve("John", "Smith") print(Classe.eleves)
class Eleve: def __init__(self, prenom, nom): self.prenom = prenom self.nom = nom class Classe: pass Classe.ajouter_eleve("John", "Smith") print(Classe.eleves)
Un instant...
Test de la représentation d'un élève
La représentation d'une instance d'un élève doit retourner son prénom et son nom, séparés par un espace (par exemple : "John Smith"
).
Test de la méthode statique ajouter_eleve
La méthode ajouter_eleve doit créer un élève et ajoute son instance à l'attribut Classe.eleves.
Bravo, tu as réussi cet exercice de code 🥳

Soumettre ma solution
Vous avez trouvé une solution alternative pour cet exercice ? Proposez votre solution à la communauté 👇
Seules les propositions différentes de la solution proposée par Docstring peuvent être envoyées.
Ma solution :
Mes notes
Sauvegardé