Свойства класса - ООП Python
Классы нового стиля позволяют создать идентификатор, через который можно получить, изменить или удалить значение атрибута класса. Создается такой идентификатор с помощью функции property(), форма функции:
<Свойства> = property(<Чтение>[, <Запись>[, <Удаление>[, <Строка документирования>]]])
В первых трех параметрах указывается ссылка на соответствующий метод класса. При попытке получить значение будет вызван метод, указанный в первом параметре. При операции присваивания значения будет вызван метод, указанный во втором параметре. Этот метод должен принимать один параметр. В случае удаления атрибута вызывается метод, указанный в третьем параметре. Если в качестве какого-либо параметра задано значение None, то это означает, что соответствующий метод не поддерживается. Рассмотрим свойства класса на примере.
Свойства класса
class Class1(object):
    def __init__(self, value):
        self.__var = value
    def getVar(self):        # Чтение
        return self.__var
    def setVar(self, value): # Запись
        self.__var = value
    def delVar(self):        # Удаление
        del self.__var
    v = property(getVar, setVar, delVar, "Строка документирования")
c1 = Class1(5)
c1.v = 35                    # Вызывается метод setVar()
print c1.v                   # Вызывается метод getVar()
del c1.v                     # Вызывается метод delVar()
В Python 2.6 были добавлены методы getter(), setter() и deleter(), позволяющие создавать свойства классов с помощью декораторов функций. Пример использования декораторов приведен ниже.
Методы getter(), setter() и deleter()
class Class1(object): # Работает, начиная с версии Python 2.6
    def __init__(self, value):
        self.__var = value
    @property
    def v(self):                       # Чтение
        return self.__var
    @v.setter
    def v(self, value):                # Запись
        self.__var = value
    @v.deleter
    def v(self):                       # Удаление
        del self.__var
c1 = Class1(5)
c1.v = 35                              # Запись
print c1.v                             # Чтение
del c1.v                               # Удаление
После программирования на любимом языке программирования можно сесть и поиграть в videoslotsonline.ru/igrovoj-avtomat-robin-gud.html игровой автомат Робин-Гуд как бесплатно так и с вложением денег для получения с этого выгоды. Научитесь профессиональной игры в бесплатном режиме и начните обыгрывать автомат в реальной игре.
- Разработка на Django под Windows при помощи Docker-machine
 - Создание нового изображения с библиотекой PIL в Python
 - Выполнение запроса в SQLite3 через Python
 - Абстрактные методы в Python
 - Как импортировать словарь в Lingualeo при помощи Python?
 - Гибкое создание объектов в Python с помощью метода __new__
 - Отправка писем из Python SMTPlib
 

