Python中函數和方法的區別
阿新 • • 發佈:2018-01-27
ini import ins function cti body itl 一個 object
1、函數要手動傳self,方法不用傳self
2、如果是一個函數,用類名去調用,如果是一個方法,用對象去調用
舉例說明:
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
Python中函數和方法的區別