Можно ли украсить функцию/метод __get__ Метод?Python

Программы на Python
Anonymous
 Можно ли украсить функцию/метод __get__ Метод?

Сообщение Anonymous »

Я пытаюсь понять, как методы работают как дескрипторы. > Чтобы поддержать вызовы метода, функции включают метод __get __ () для методов привязки во время доступа к атрибуту. Это означает, что все функции-это не дата-дескрипторы, которые возвращают связанные методы, когда они вызываются из объекта. Пунктирный доступ из класса вызовов __get __ () " я предположил, что можно украсить __get __ Метод класса.

Я пытаюсь Чтобы обернуть некоторую функцию .__ Получить __ < /code>: < /p>

def wrap(func):
def wrapped(*args, **kwargs):
print("Wrapping...")
return func(*args, **kwargs)
return wrapped

class SomeClass():
def someFunction(self):
print("someFunction called")
someFunction.__get__ = wrap(someFunction.__get__)

obj = SomeClass()
obj.someFunction()
< /code>

Вывод просто «какая -то функция» называется «< /code> как если бы ничего не изменилось. < /p>

Итак Мой вопрос: почему обертывание ... < /code> журнал не напечатан?someFunction.__get__ = wrap(someFunction.__get__)
< /code>

Что -нибудь? < /p>

Подробнее здесь: https://stackoverflow.com/questions/615 ... get-method

Вернуться в «Python»