Есть ли возможность уловить события «до/после вызова функции» для всех функций класса, не украшая каждую из этих функций? Может быть, какой-то классный декоратор? Другими словами, для такого кода, я хотел бы получить следующий вывод:Поймать события «до/после вызова функции» для всех функций класса
class Foo:
def func1():
print('1')
def func2():
print('2')
c = Foo()
c.func1()
c.func2()
# Output I would like to get:
# func1 called
# 1
# func1 finished
# func2 called
# 2
# func2 finished
мне это нужно не для трассировки. В классе, работающем с асинхронными функциями, мне нужно знать, вызывалась ли какая-либо функция до того, как была закончена другая функция.
положить в печать заявления? Например, –
. Другими словами, мне нужно вызвать некоторую функцию до/после любой функции в вызове класса. Даже если я добавлю новые функции в класс. –