亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > Python > 正文

Python classmethod()方法

2023-04-24 19:21:36
字體:
來源:轉載
供稿:網友

python classmethod()是Python標準庫中的一個內置方法。在Python中,有三種類型的方法,分別是:實例方法、類方法和靜態方法。

這篇文章首先介紹一下類方法的含義及使用方法。

classmethod()方法是什么

在Python中,類方法是可以使用類名直接調用的方法,類方法可以在類的所有對象中進行共享。classmethod()方法可以把類中的一個方法轉化為類方法,但要求類中定義的那個方法的第一個參數是 cls ,當然這只是約定俗成的,使用其他標識符也可以,主要用于隱式的表示類自身,以調用類的屬性、方法,以及實例化對象等,這點與實例方法中的 self 參數相似。

類方法即可以使用類來調用(如C.f()),又可以使用類的實例來調用(如C().f())。如果類方法由派生類來調用,則派生類的對象將作為classmethod()的第一個參數。

Python中的類方法與Java、C#等中的靜態方法不同,這些問題將在今后的文章中進行探討。

Python classmethod()方法

classmethod()的語法

該方法的語法格式如下:

classmethod(function)

參數

function:用于指定類中轉換為類方法的方法名稱,當然也應該包含類名。

返回值

該函數沒有返回值。

classmethod()使用示例

下面使用實例來說明classmethod()方法的具體使用過程。

class Hello:
    word = "你好"

    def SayHello(cls):
        print(cls.word)

#定義一個實例
h = Hello()
#實例調用SayHello
h.SayHello()
#Hello.SayHello() #這時使用會報錯

#將SayHello指定為類方法
Hello.SayHello= classmethod(Hello.SayHello)
#用實例來調用
h.SayHello() #你好
#用類方法
Hello.SayHello() #你好

#用實例修改word的值
h.word="關注:優雅的代碼"
h.SayHello() #你好
Hello.SayHello() #你好

#用類名修改word的值
Hello.word="優雅的代碼"
h.SayHello() #優雅的代碼
Hello.SayHello() #優雅的代碼

輸出結果如下:(上面代碼為了讓大家看得清楚,使用注釋方法也注釋了輸出內容。)

你好
你好
你好
你好
你好
優雅的代碼
優雅的代碼

從上面的代碼及輸出結果可以看出:

(1)類方法中可以訪問類的變量和方法;

(2)類方法可以使用類名調用,也可以使用類的實例調用;

(3)把一個方法轉換成類方法后,使用實例調用時只能讀取類共享的變量值,無法獲取實例的變量值;

(4)類方法不能獲取實例的變量值,只能讀取類共享的變量值,即類變量的默認值或使用類名調用變量修改的值。

下面再看一個例子:

class Hello:
    word = "你好"

    def SayHello(self):
        print(self.word)

    def Say(cls, w):
        cls.word = w
        cls.SayHello()

Hello.SayHello = classmethod(Hello.SayHello)
Hello.Say = classmethod(Hello.Say)

Hello.SayHello()
Hello.Say("歡迎關注微信訂閱號:優雅的代碼")

輸出結果如下所示:

你好
歡迎關注微信訂閱號:優雅的代碼

這段代碼主要演示類方法帶有其它參數的情況。

classmethod()方法是在Python 2.2版本加進來的,但很明顯這種定義類方法的過程還是很麻煩,在Python2.4版本中使用方法修飾符的方法來實現,即在類中需要定義類方法上面使用@classmethod修飾符來指定該方法為類方法。其基本語法格式如下:

class className:
    @classmethod
    def funname(cls, arg1,arg2,...):
        #方法的相關代碼

上面的@classmethod是funname()方法的修飾符,它指示funname()是一個類方法。下面看一個具體的例子:

class Student:
    age = 23

    @classmethod
    def printAge(cls):
        print(cls.age)

Student.printAge()

輸出結果:

23

使用@classmethod修飾符指定的類方法與上面所講的要求相同。

以上講解了關于Python中classmethod()方法和@classmethod修飾符的作用,如有問題,歡迎留言。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
zzijzzij亚洲日本成熟少妇| 国外成人在线视频| 成人春色激情网| 国产视频福利一区| 久久久久久免费精品| 久久久久久久电影一区| 亚洲午夜激情免费视频| 欧美日韩成人在线视频| 久久深夜福利免费观看| 久久久精品一区| 亚洲男人av在线| 亚洲综合日韩在线| 国产日韩在线看| 亚洲免费人成在线视频观看| 日韩av色在线| 国产99在线|中文| 亚洲国产精品99| 九九精品视频在线观看| 久久99久国产精品黄毛片入口| 精品一区二区电影| 久久久久久久久久久人体| 成人欧美一区二区三区黑人| 久久精品99久久久香蕉| 亚洲精品美女久久久| 国产精品久久久久久五月尺| 亚洲成色999久久网站| 欧美色视频日本版| 亚洲字幕在线观看| 国产精品一区二区久久精品| 亚洲欧美国产精品久久久久久久| 久久久久久久久久国产精品| 成人午夜高潮视频| 色悠悠久久88| 亚洲夜晚福利在线观看| 欧美电影电视剧在线观看| 亚洲专区中文字幕| 一区二区亚洲精品国产| 全亚洲最色的网站在线观看| 韩日精品中文字幕| 亚洲码在线观看| 日韩精品极品视频| 国产精品久久久久久网站| 精品人伦一区二区三区蜜桃网站| 中文字幕九色91在线| 在线观看欧美成人| 91久久精品日日躁夜夜躁国产| 欧美一区二区三区免费视| 欧美激情在线有限公司| 久久精品国产成人精品| 性色av一区二区三区红粉影视| 国产精品最新在线观看| 美女福利精品视频| 成人av在线亚洲| 国产成人在线精品| 欧美另类交人妖| 一本大道香蕉久在线播放29| 91精品在线影院| 欧洲成人在线观看| 久久精品国产精品亚洲| 一区二区三区四区精品| 欧美肥臀大乳一区二区免费视频| 日韩电影视频免费| 欧美最近摘花xxxx摘花| 国产亚洲精品一区二555| 久久国产精品久久久久| 久久免费视频网站| 亚洲片av在线| 亚洲丝袜在线视频| 欧美性感美女h网站在线观看免费| 亚洲夜晚福利在线观看| 午夜美女久久久久爽久久| 98精品国产高清在线xxxx天堂| 欧美成人免费全部| 欧美性感美女h网站在线观看免费| 亚洲女成人图区| 久久av中文字幕| 色老头一区二区三区在线观看| 久久成人这里只有精品| 欧美激情免费视频| 亚洲天堂av在线免费观看| 国语自产精品视频在线看一大j8| 国产在线一区二区三区| 久久久国产精品免费| 国内精品久久久久久| 欧美日韩亚洲一区二| 亚洲精品福利免费在线观看| 91九色在线视频| 精品中文字幕久久久久久| 欧美大片在线看免费观看| 久久国产精品久久精品| 91久热免费在线视频| 日韩av在线不卡| 色婷婷综合久久久久中文字幕1| 久久精品国产一区| 91精品久久久久久久久中文字幕| 欧美大尺度激情区在线播放| 欧美电影免费观看高清完整| 亚洲无线码在线一区观看| 欧美第一淫aaasss性| 亚洲韩国青草视频| 国产精品国产亚洲伊人久久| 按摩亚洲人久久| 日韩av免费在线看| 日韩成人在线观看| 国产精品日韩电影| 91国产精品视频在线| 欧美日韩亚洲高清| 国产精品综合不卡av| 成人黄色av免费在线观看| 在线观看精品国产视频| 精品亚洲一区二区三区在线观看| 成人国产亚洲精品a区天堂华泰| 国产不卡av在线免费观看| 91精品国产综合久久久久久蜜臀| 成人激情视频在线观看| 亚洲欧洲日产国产网站| 久久在线免费观看视频| 成人激情视频免费在线| 精品久久久久久久久久ntr影视| 日本乱人伦a精品| 97免费中文视频在线观看| 精品精品国产国产自在线| 欧美性生交大片免网| 欧美激情亚洲精品| 日韩激情视频在线播放| 日本欧美黄网站| 亚洲日韩中文字幕在线播放| 欧美日韩视频免费播放| 日韩精品高清在线观看| 黄色成人av网| 精品国产老师黑色丝袜高跟鞋| 久久综合色影院| 国产精品久久久久久久电影| 国产成人精品最新| 久久久久久噜噜噜久久久精品| 欧美裸体男粗大视频在线观看| 国产亚洲人成a一在线v站| 7777免费精品视频| 久久综合伊人77777尤物| 色一情一乱一区二区| 国产精品黄页免费高清在线观看| 国产精品自拍偷拍视频| 成人亚洲欧美一区二区三区| 国产一区二区成人| 国产精品美腿一区在线看| 亚洲一区二区久久久久久久| 中文字幕亚洲字幕| 亚洲精品成人久久| 亚洲国产女人aaa毛片在线| 一区二区三区国产视频| 久久6精品影院| 欧美亚洲视频一区二区| 国产精品1234| 国外色69视频在线观看| 亚洲高清色综合| 欧美日韩亚洲精品内裤| 亚洲www视频| 庆余年2免费日韩剧观看大牛| 亚洲精品按摩视频| 日韩精品中文字幕在线播放| 亚洲大尺度美女在线| 欲色天天网综合久久| 国产在线拍偷自揄拍精品| 日韩极品精品视频免费观看|