亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

什么是Python的類方法和靜態方法

發布時間:2020-08-25 14:00:09 來源:億速云 閱讀:124 作者:Leah 欄目:編程語言

這期內容當中小編將會給大家帶來有關什么是Python的類方法和靜態方法,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

類方法

類方法:是類對象所擁有的方法,需要用修飾器@classmethod來標識其為類方法,對于類方法,第一個參數必須是類對象,一般以cls作為第一個參數(當然可以用其他名稱的變量作為其第一個參數,但是大部分人都習慣以’cls’作為第一個參數的名字,就最好用’cls’了),能夠通過實例對象和類對象去訪問。

class Person(object):
    country = "china"
    @classmethod
    def getCountry(cls):
        return cls.country
p = Person()
print(p.getCountry()) #正確,實例對象可以調用類方法
print(Person.getCountry())

運行結果為:

china
china

類方法還有一個用途就是可以對類屬性進行修改:

class Person(object):
    country = "china"
    @classmethod
    def getCountry(cls):
        return cls.country
    @classmethod
    def setCountry(cls,newCountry):
        cls.country = newCountry
p = Person()
print(p.getCountry()) #正確,實例對象可以調用類方法
print(Person.getCountry())
     
p.setCountry("CHINA")
print(p.getCountry())
Person.setCountry("中國")
print(Person.getCountry())

運行結果為:

china
china
CHINA
中國

結果顯示在用類方法對類屬性修改之后,通過類對象和實例對象訪問都發生了改變。

靜態方法

靜態方法:需要通過修飾器@staticmethod來進行修飾,靜態方法不需要多定義參數。

class Person(object):
    country = "china"
    @staticmethod
    def getCountry():
        return Person.country
p = Person()
print(p.getCountry())
print(Person.getCountry())

運行結果為:

china
china

總結:

實例方法:

定義:第一個參數必須是實例對象,該參數名一般約定為“self”,通過它來傳遞實例的屬性和方法(也可以傳類的屬性和方法);

調用:只能由實例對象調用。

類方法:

定義:使用裝飾器@classmethod。

第一個參數必須是當前類對象,該參數名一般約定為“cls”,通過它來傳遞類的屬性和方法(不能傳實例的屬性和方法);

調用:實例對象和類對象都可以調用。

靜態方法:

定義:使用裝飾器@staticmethod。參數隨意,沒有“self”和“cls”參數,但是方法體中不能使用類或實例的任何屬性和方法;

調用:實例對象和類對象都可以調用。

上述就是小編為大家分享的什么是Python的類方法和靜態方法了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

美姑县| 林芝县| 甘德县| 龙游县| 措美县| 石棉县| 中宁县| 平利县| 盈江县| 湖北省| 万全县| 黔南| 昌邑市| 贵定县| 黑山县| 吴忠市| 合川市| 廊坊市| 五莲县| 武山县| 莱西市| 简阳市| 勐海县| 工布江达县| 平湖市| 弋阳县| 罗甸县| 南岸区| 寻乌县| 上栗县| 梅河口市| 通城县| 灯塔市| 屯门区| 茂名市| 德清县| 杭锦旗| 工布江达县| 连平县| 来安县| 镇宁|