Intermédiaire
🧠 Fondamentaux
20 XP
0 personnes ont réussi
Property calculée
Une property calculée est un attribut qui n'est pas stocke directement mais recalcule a chaque acces. Si tu ne definis pas de setter, la property est en lecture seule.
C'est pratique pour les valeurs derivees : au lieu de stocker le diametre ET le rayon (et risquer qu'ils soient incoherents), tu stockes juste le rayon et tu calcules le diametre a la volee.
Exemple :
class Carre: def __init__(self, cote): self.cote = cote
@property def aire(self): return self.cote ** 2
c = Carre(5) print(c.aire) # 25 (pas de parentheses !) c.cote = 10 print(c.aire) # 100 (recalcule automatiquement)
Crée une classe Cercle(rayon) avec des properties en lecture seule : diametre, aire et circonference.
Rappels : diametre = 2 * rayon, aire = pi * rayon au carre, circonference = 2 * pi * rayon
Exemple : c = Cercle(5) c.diametre renvoie 10 c.rayon = 3 c.diametre renvoie 6 (recalcule !)
Tests (2/4)
Diamètre
assert Cercle(5).diametre == 10
Aire
import math
assert abs(Cercle(1).aire - math.pi) < 0.01