Найти - Пользователи
Полная версия: Переопределить метод присваивания у объекта
Начало » Python для новичков » Переопределить метод присваивания у объекта
1 2
FishHook
Можно и без этого обойтись, но тогда Вы не получите доступ к атрибутам класса, тут все по аналогии с self, который дает доступ к атрибутам объекта.
class classproperty(object):
    def __init__(self, fget):
        self.fget = fget
    def __get__(self, owner, cls):
	return self.fget(cls)
class Foo(object):
    s = 23
    @classproperty
    def foo(cls):
        return cls.s
print Foo.foo
если мы не будем передавать cls в fget, то не получит доступа к cls.s, а такой декоратор, согласитесь, малополезен
4kpt
В предыдущем примере это быле излишним. В новом примере все стало на свои места. Спасибо.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB