如何判断类实例方法和函数是否相同?
我有一个使用装饰器的简单类:
@decorate_class
class Hello:
@decorate_func
def world(self):
return
这些是我的装饰器:
# A global variable
global_func = None
def decorate_func(func):
global_func = func
return func
def decorate_class(clazz):
print clazz.__dict__["world"] == global_func
return clazz
以上返回False
,可能是因为type(func)
in decorate_func
is function
,但 in decorate_class
it is instancemethod
。但是打印它们都给了我:
<function world at 0x7f490e59ce60>
如,相同的内存地址。我如何比较它们以知道它们是相同的功能?通过内存地址进行比较是否安全(且正确)?