Junior — Middle
Poți explica ce este o proprietate în Python și cum poate fi utilizată?
sobes.tech AI
Răspuns de la AI
În Python, property este un decorator încorporat care permite gestionarea accesului la atributele unei clase, transformând metodele în proprietăți. Acest lucru este util pentru încapsulare: puteți defini un getter, un setter și un deleter pentru un atribut, utilizând sintaxa de acces ca și cum ar fi un câmp obișnuit.
Exemplu de utilizare:
class Persoana:
def __init__(self, nume):
self._nume = nume # atribut privat
@property
def nume(self):
return self._nume
@nume.setter
def nume(self, valoare):
if not valoare:
raise ValueError("Numele nu poate fi gol")
self._nume = valoare
p = Persoana("Alice")
print(p.nume) # va apela getter-ul
p.nume = "Bob" # va apela setter-ul
Astfel, property permite controlul citirii și scrierii atributelor, adăugarea de validări sau calcularea valorilor în timp real, păstrând o interfață simplă și clară.