Intermédiaire
🧠 Fondamentaux
20 XP
0 personnes ont réussi
Méthode de classe
Une méthode de classe est liee a la classe elle-meme, pas a une instance particuliere. Elle recoit cls (la classe) comme premier paramètre au lieu de self (l'objet).
On la marque avec @classmethod. C'est souvent utilise pour créer des constructeurs alternatifs :
class Date: def __init__(self, jour, mois, annee): self.jour = jour self.mois = mois self.annee = annee
d = Date.depuis_chaine('25/12/2025') d.jour vaut 25
cls représente la classe elle-meme. Appeler cls(...) revient a appeler Date(...).
Crée une classe Cercle avec un attribut rayon. Ajoute : - une méthode aire() qui renvoie 3.14159 * rayon * rayon - une méthode de classe depuis_diametre(cls, diametre) qui crée un Cercle a partir du diametre (rayon = diametre / 2)
Exemple : c = Cercle.depuis_diametre(10) c.rayon vaut 5 c.aire() renvoie environ 78.54
Tests (3/4)
Aire rayon 5
c = Cercle(5)
assert abs(c.aire() - 78.53975) < 0.01
Depuis diametre
c = Cercle.depuis_diametre(10)
assert c.rayon == 5
Aire depuis diametre
c = Cercle.depuis_diametre(10)
assert abs(c.aire() - 78.53975) < 0.01