# 普通方法,類方法,靜態方法的區別
__metaclass__ = type
class tst:
name = 'tst'
data = 'this is data'
# 普通方法
def normalmethod(self, name):
print self.data, name
# 類方法,可以訪問類屬性
@classmethod
def classmethod(cls, name):
print cls.data, name
# 靜態方法,不可以訪問類屬性
@staticmethod
def staticmethod(name):
print name
tst = tst()
tst.data = 'this is new'
tst.normalmethod('name')
tst.staticmethod('name')
tst.classmethod('name')
#結果this is new name
name
this is data name
# error普通方法必須通過例項呼叫
# tst.normalmethod('name')
tst.classmethod('name')
tst.staticmethod('name')
#結果this is data name
name
def normalmethod(self,data)
類方法,可以通過cls訪問類屬性
@classmethod
def classmethod(cls,data)
靜態方法,不可以訪問,通過傳值的方式
@staticmethod
def staticmethod(data)
Python普通方法 靜態方法 類方法
coding utf 8 普通方法,類方法,靜態方法的區別 metaclass type class tst name tst data this is data 普通方法 defnormalmethod self,name print self.data,name 類方法,可以訪問類屬性 clas...
Python普通方法 靜態方法 類方法
coding utf 8 普通方法,類方法,靜態方法的區別 metaclass type class tst name tst data this is data 普通方法 defnormalmethod self,name print self.data,name 類方法,可以訪問類屬性 clas...
類方法,普通方法和靜態方法
類方法,普通方法和靜態方法 class game object 類屬性 num 0 例項方法 必須得有引數,def init self 例項屬性 self.name laowang 例項方法 必須得有引數 第乙個引數傳遞的是當前的物件 def init a 例項屬性 a.name laowang 類...