Construcția property () returnează atributul property.
Sintaxa lui property()este:
property (fget = None, fset = None, fdel = None, doc = None)
Lectură recomandată: Python @property: Cum se folosește și de ce?
property () Parametri
property()Ia patru parametri opționali:
- fget (opțional) - Funcție pentru obținerea valorii atributului. Implicit la 
None. - fset (opțional) - Funcție pentru setarea valorii atributului. Implicit la 
None. - fdel (opțional) - Funcție pentru ștergerea valorii atributului. Implicit la 
None. - doc (opțional) - Un șir care conține documentația (docstring) pentru atribut. Implicit la 
None. 
Returnează valoarea din proprietate ()
property() returnează atributul de proprietate de la getter, setter și deleter dat.
- Dacă nu sunt date argumente, 
property()returnează un atribut de proprietate de bază care nu conține niciun getter, setter sau deleter. - Dacă doc nu este furnizat, 
property()preia docstring-ul funcției getter. 
Exemplul 1: Creați atributul cu getter, setter și deleter
 class Person: def __init__(self, name): self._name = name def get_name(self): print('Getting name') return self._name def set_name(self, value): print('Setting name to ' + value) self._name = value def del_name(self): print('Deleting name') del self._name # Set property to use get_name, set_name # and del_name methods name = property(get_name, set_name, del_name, 'Name property') p = Person('Adam') print(p.name) p.name = 'John' del p.name
Ieșire
Obținerea numelui Numele este: Adam Setarea numelui pe John Ștergerea numelui
Aici, _name este folosit ca variabilă privată pentru stocarea numelui Persoanei.
De asemenea, am setat:
- o metodă getter 
get_name()pentru a obține numele persoanei, - o metodă setter 
set_name()pentru a seta numele persoanei, - o metodă 
del_name()de ștergere pentru a șterge numele persoanei. 
Acum, setăm un nou nume de atribut de proprietate apelând property()metoda.
Așa cum se arată în program, referindu-se la p.nameapeluri interne get_name()ca getter, set_name()ca setter și del_name()ca ștergere prin ieșirea tipărită prezentă în interiorul metodelor.
Exemplul 2: Utilizarea @property decorator
În loc să îl utilizați property(), puteți utiliza decoratorul Python @propertypentru a atribui getter, setter și deleter.
 class Person: def __init__(self, name): self._name = name @property def name(self): print('Getting name') return self._name @name.setter def name(self, value): print('Setting name to ' + value) self._name = value @name.deleter def name(self): print('Deleting name') del self._name p = Person('Adam') print('The name is:', p.name) p.name = 'John' del p.name
Ieșire
Obținerea numelui Numele este: Adam Setarea numelui pe John Ștergerea numelui
Aici, în loc să îl folosim property(), am folosit @propertydecoratorul.
Mai întâi, specificăm că name()metoda este și un atribut al Persoanei. Acest lucru se face folosind @propertyînainte de metoda getter așa cum se arată în program.
Apoi, folosim numele atributului pentru a specifica setatorul și ștergerea.
Acest lucru se face folosind @name.setterpentru metoda setter și @name.deleterpentru metoda deleter.
Observați, am folosit aceeași metodă name()cu definiții diferite pentru definirea getterului, setterului și deleterului.
Acum, ori de câte ori îl folosim p.name, apelează intern getter-ul, setter-ul și ștergerea corespunzătoare, așa cum se arată în ieșirea tipărită prezentă în interiorul metodei.








