Header Image

Python property decorators

Загружено/обновлено 27 Июня 2016

Таким образом можно осуществлять инкапсуляцию переменных класса в Питоне, если все-таки возникает такая необходимость. Или, когда, просто нужно нагрузить дополнительным функционалом получение или присвоение значений.

class MyClass:

    def __init__(self, name):
        self._name = name

    @property
    def name(self):
        return self._name

    @name.setter
    def name(self, value):
        self._name = value

    @name.deleter
    def name(self):
        self.name = None