Eiendommen () -konstruksjonen returnerer eiendomsattributtet.
Syntaksen for property()er:
eiendom (fget = Ingen, fset = Ingen, fdel = Ingen, doc = Ingen)
Anbefalt lesing: Python @property: Hvordan bruke den og hvorfor?
eiendom () Parametere
Det property()tar fire valgfrie parametere:
- fget (valgfritt) - Funksjon for å få attributtverdien. Standardinnstillingen er 
None. - fset (valgfritt) - Funksjon for å stille inn attributtverdien. Standardinnstillingen er 
None. - fdel (valgfritt) - Funksjon for å slette attributtverdien. Standardinnstillingen er 
None. - doc (valgfritt) - En streng som inneholder dokumentasjonen (docstring) for attributtet. Standardinnstillingen er 
None. 
Returverdi fra eiendom ()
property() returnerer eiendomsattributtet fra den gitte getter, setter og deleter.
- Hvis ingen argumenter blir gitt, 
property()returnerer en baseegenskapsattributt som ikke inneholder noen getter, setter eller deleter. - Hvis doc ikke leveres, 
property()tar du doktringen av getter-funksjonen. 
Eksempel 1: Lag attributt med getter, setter og 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
Produksjon
Få navn Navnet er: Adam Setter navn til John Sletter navn
Her brukes _name som den private variabelen for å lagre navnet på personen.
Vi setter også:
- en getter-metode for 
get_name()å få navnet på personen, - en settermetode for 
set_name()å angi navnet på personen, - en slettemetode for 
del_name()å slette navnet på personen. 
Nå setter vi et nytt eiendomsattributtnavn ved å kalle property()metoden.
Som vist i programmet, refererer p.nameinternt til kall get_name()som getter, set_name()som setter og del_name()som deleter gjennom utskriften som er tilstede i metodene.
Eksempel 2: Bruk av @property decorator
I stedet for å bruke property()kan du bruke Python-dekoratøren @propertytil å tildele getter, setter og 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
Produksjon
Få navn Navnet er: Adam Setter navn til John Sletter navn
Her, i stedet for å bruke property(), har vi brukt @propertydekoratøren.
Først spesifiserer vi at name()metoden også er et personattributt. Dette gjøres ved å bruke @propertyfør getter-metoden som vist i programmet.
Deretter bruker vi attributtnavnet til å spesifisere setter og sletter.
Dette gjøres ved å bruke @name.setterfor setter-metoden og @name.deleterfor deleter-metoden.
Legg merke til at vi har brukt den samme metoden name()med forskjellige definisjoner for å definere getter, setter og deleter.
Nå, når vi bruker p.namedet, kaller det internt den aktuelle getter, setter og deleter som vist av den trykte utgaven som er inne i metoden.








