【发布时间】:2013-09-07 17:36:02
【问题描述】:
如何识别当前被修饰的函数是方法(属于类)还是函数?
class ClassA:
@mydecorator
def method(self)
pass
@staticmethod
@mydecorator
def function()
pass
mydecorator 需要知道被装饰的函数是:
- 一种方法 (is_method)
- 静态方法 (is_static)
- 类方法 (is_classmethod)
- 一个全局函数 (is_function)
我们怎样才能做到这一点?
谢谢!
【问题讨论】:
-
应用装饰器时,函数还是函数;该方法仅在从类访问时才被绑定(每次都是动态的)。