Python中函数和方法的区别
python学习网,大量的免费python视频教程,欢迎在线学习!
1、函数要手动传self,方法不用传self。
2、如果是一个函数,用类名去调用,如果是一个方法,用对象去调用。
相关推荐:《Python入门教程》
举例说明:
class Foo(object):
def __init__(self):
self.name="haiyan"
def func(self):
print(self.name)
obj = Foo()
obj.func()
Foo.func(obj)
判断函数和方法的方式
from types import FunctionType,MethodType
obj = Foo()
print(isinstance(obj.func,FunctionType)) #False
print(isinstance(obj.func,MethodType)) #True #说明这是一个方法
print(isinstance(Foo.func,FunctionType)) #True #说明这是一个函数。
print(isinstance(Foo.func,MethodType)) #False