MyTetra Share
Делитесь знаниями!
getter и setter в Python
Время создания: 14.08.2018 10:21
Автор: br0ke
Текстовые метки: python, property, get, set, del, getter, setter, deleter, getattr, setattr, delattr, del
Раздел: Информационные технологии - Python
Запись: and-semakin/mytetra_data/master/base/15342240740vpzwpx0pt/text.html на raw.githubusercontent.com

1. Сначала используем просто аттрибуты, пока явно не появится нужда к использованию чего-то более сложного:


value = 'something'


obj.attribute = value

value = obj.attribute

del obj.attribute


2. Теперь появилась нужда контролировать чтение/изменение аттрибута, но мы не хотим менять публичное API объекта:


class Obj:

"""property demo"""

@property

def attribute(self): # implements the get - this name is *the* name

return self._attribute

@attribute.setter

def attribute(self, value): # name must be the same

self._attribute = value

@attribute.deleter

def attribute(self): # again, name must be the same

del self._attribute

Так же в этом разделе:
 
MyTetra Share v.0.59
Яндекс индекс цитирования