Introduction Attributs spéciaux Classique Spécialisation Exotique
Descripteurs
3 méthodes : __get__(self, instance, owner)
__set__(self, instance, value)
__delete__(self, instance)
descripteur = propriété calculée
utile pour les conversions, les bases de données, ...
ex : distance accessible en mètres et kilomètres
class Kilometre():
def __get__(self, instance, owner):
return owner.distance / 1000
def __set__(self, instance, value):
owner.distance = value * 1000
class Mesure():
def __init__(self, distance):
self.distance = float(distance)
self.kilometres = Kilometre()