最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python類方法和靜態(tài)方法詳解

 更新時(shí)間:2022年01月18日 09:07:44   作者:無情的打碼機(jī)器  
這篇文章主要為大家介紹了python類方法和靜態(tài)方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助

類方法

需要用裝飾器@classmethod來標(biāo)識(shí)其為類方法,對(duì)于類方法,第一個(gè)參數(shù)必須是類對(duì)象,一般以cls作為參數(shù)

使用場景

1當(dāng)方法中需要使用類對(duì)象(如訪問私有類屬性)時(shí),定義類方法

2類方法一般和類屬性配合使用

# 需要用裝飾器@classmethod來標(biāo)識(shí)其為類方法,對(duì)于類方法,第一個(gè)參數(shù)必須是類對(duì)象,一般以cls作為參數(shù)
# 使用場景
# 1當(dāng)方法中需要使用類對(duì)象(如訪問私有類屬性)時(shí),定義類方法
# 2類方法一般和類屬性配合使用
class Dog(object):
    __tooth = 10
    t=10
#修改私有屬性
    @classmethod
    def getooth(cls, c):
        cls.__tooth = c
        return cls.__tooth
#得到私有屬性
    def get(self):
        return self.__tooth

ww = Dog()
cc=Dog()
result1=ww.get()            #10
result2 = ww.getooth(100)   #100
result3=ww.get()            #100
result4=cc.get()            #100成功修改私有屬性
print(result1, result2,result3,result4 )

如果去掉@classmethod后,就無法修改私有類屬性,result4 變成了10

self,和cla只是名詞,可以更換其它名字,@不可去掉

靜態(tài)方法

1特點(diǎn)

需要通過修飾器@staticmethod來修飾,靜態(tài)方法既不需要傳遞實(shí)例對(duì)象,也不需要傳遞類對(duì)象(形參沒有sslf/cls)

靜態(tài)方法也可以通過類對(duì)象和實(shí)例對(duì)象去訪問

2使用場景

當(dāng)方法中既不需要使用實(shí)例對(duì)象(如實(shí)例屬性,實(shí)例方法),也不需要使用類對(duì)象(如類屬性、類方法、創(chuàng)建實(shí)例等時(shí),定義靜態(tài)方法

取消不需要的參數(shù)傳遞,有利于減少不必要的內(nèi)存占用和性能消耗

#1特點(diǎn)
#需要通過修飾器@staticmethod來修飾,靜態(tài)方法既不需要傳遞實(shí)例對(duì)象,也不需要傳遞類對(duì)象(形參沒有sslf/cls)
#靜態(tài)方法也可以通過類對(duì)象和實(shí)例對(duì)象去訪問
#2使用場景
#當(dāng)方法中既不需要使用實(shí)例對(duì)象(如實(shí)例屬性,實(shí)例方法),也不需要使用類對(duì)象(如類屬性、類方法、創(chuàng)建實(shí)例等時(shí),定義靜態(tài)方法
#取消不需要的參數(shù)傳遞,有利于減少不必要的內(nèi)存占用和性能消耗
class Dog(object):
    @staticmethod
    def static():
        print("這是一個(gè)靜態(tài)方法")
dog=Dog()
dog.static() #這是一個(gè)靜態(tài)方法
Dog.static() #這是一個(gè)靜態(tài)方法

總結(jié)

本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

最新評(píng)論

监利县| 大庆市| 拉萨市| 涟水县| 上林县| 新龙县| 红原县| 郸城县| 石台县| 曲沃县| 贵定县| 东港市| 安泽县| 麦盖提县| 瓮安县| 高陵县| 敦煌市| 东明县| 陈巴尔虎旗| 介休市| 中宁县| 醴陵市| 和田市| 确山县| 同心县| 嘉善县| 龙川县| 乌鲁木齐县| 田东县| 内丘县| 临沂市| 聂荣县| 屯留县| 濮阳市| 山丹县| 安泽县| 海林市| 龙井市| 莱阳市| 保靖县| 三台县|