Yerleşik özellik
işlevinin nasıl çalıştığını anlamak istiyorum. Kafamı karıştıran şey, özellik
`in dekoratör olarak da kullanılabilmesi, ancak dekoratör olarak kullanıldığında değil, yalnızca yerleşik bir işlev olarak kullanıldığında argümanları alıyor.
Bu örnek belgelerinden:
sınıf C: def __init__(self): self._x = Yok def getx(self): dönüş self._x def setx(self, değer): self._x = değer def delx(self): del self._x x = property(getx, setx, delx, "Ben" "x" özelliğiyim.")
property
"lerin argümanları getx< şeklindedir. /code>,
setx
, delx
ve bir belge dizesi.
Aşağıdaki kodda dekoratör olarak özellik
kullanılır . Bunun nesnesi x
işlevidir, ancak yukarıdaki kodda argümanlarda nesne işlevine yer yoktur.
class C: def __init__(self ): self._x = Yok @property def x(self): """Ben" x" özelliğiyim.""" return self._x @x.setter def x(self, value ): self._x = değer @x.deleter def x(self): del self._x
x.setter
ve x nasıl? .deleter
dekoratörleri bu durumda mı oluşturuldu?