Рассмотрим следующий сценарий:
import functools
def wrapmethod(f):
@functools.wraps(f)
def wrap(*args, **kwargs):
print '>> %s' % (f.func_name)
# Here I'll do pre-processing
r = f(*args, **kwargs)
# Here I'll do post-processing
return r
return wrap
@wrapmethod
def foo():
pass
class Test(object):
@wrapmethod
def foo(self):
pass
test = Test()
test.foo()
foo()
Он выведет это, как вы можете видеть, выполненное в http://codepad.org/Y4xXyjJO1175154_:
>> foo >> foo
Я хочу знать, как вывести Test.foo
в первой строке, указав класс, с которым связан метод.
Есть идеи? Возможно ли такое?
Заранее благодарю.