Quelle est la manière pythonique d'utiliser les getters et les setters ?
L'utilisation des getters et des setters offre un moyen pratique de contrôler l'accès aux attributs privés en Python . Voici quelques-unes des approches couramment utilisées :
Approche basée sur la méthode :
Vous pouvez créer des méthodes getter et setter distinctes, comme indiqué ci-dessous :
def set_property(property, value): def get_property(property):
Cependant, cette approche n’est pas considérée comme très pythonique. Une méthode plus préférable consiste à utiliser :
Manipulation des attributs d'objet :
Vous pouvez attribuer directement des valeurs aux attributs d'objet en utilisant la notation par points :
object.property = value value = object.property
Cette approche est facile à utiliser et à comprendre, mais elle n'offre aucune encapsulation ni contrôle sur les attributs accès.
Propriétés Python :
La manière la plus pythonique d'implémenter les getters et les setters est d'utiliser des propriétés. Cela vous permet de définir les méthodes getter, setter et deleter dans une seule ligne de code :
class C(object): @property def x(self): """I'm the 'x' property.""" print("getter of x called") return self._x @x.setter def x(self, value): print("setter of x called") self._x = value @x.deleter def x(self): print("deleter of x called") del self._x c = C() c.x = 'foo' # setter called foo = c.x # getter called del c.x # deleter called
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!