什么是函数,什么是方法?
判断是函数还是方法,在于它的调用者是谁,如果它的调用者是类,它就是函数,调用者是对象,它就是方法
from types import MethodType,FunctionType class Foo(object): def fetch(self): pass Foo.fetch('sdf') #类名调用类中的函数时,这个函数是被当做函数被执行的 obj=Foo() obj.fetch() #对象调用类中的函数时,这个函数是被当做方法被执行的 print(isinstance(Foo.fetch,MethodType)) #False print(isinstance(Foo.fetch,FunctionType)) #True print(isinstance(obj.fetch,MethodType)) #True print(isinstance(obj.fetch,FunctionType)) #False

浙公网安备 33010602011771号