Python:類方法 與 靜態(tài)方法

一谴餐、類方法

1)類屬性:

含義:類屬性就是針對類對象定義的屬性渗饮。

定義類屬性:使用賦值語句在class關(guān)鍵字下方可以定義類屬性

作用:類屬性用于記錄這個類相關(guān)的特征

2)類方法:

含義:類方法就是針對類對象定義的方法但汞。

使用:在類方法內(nèi)部可以直接訪問類屬性 或者調(diào)用其他的類方法

語法:

@classmethod  
def 類方法名(cls):      
    pass

2.1類方法需要用修飾器@classmethod來標識,告訴python解釋器這是一個類方法

2.2類方法的第一個參數(shù)應該是cls

  • 由哪一個類調(diào)用的方法互站,方法內(nèi)的cls就是哪一個類的引用

  • 這個參數(shù)和實例方法的第一個參數(shù)是self類似

  • 提示:使用其他名稱也可以私蕾,不過都習慣使用cls

2.3通過類名. 調(diào)用類方法,調(diào)用方法時胡桃,不需要傳遞cls參數(shù)

2.4在方法內(nèi)部:

  • 可以通過 cls. 訪問類的屬性

  • 也可以通過 cls. 調(diào)用其他的類方法

3)代碼示例

需求:

  1. 定義一個工具類

  2. 每件工具都有自己記得名字name

  3. 需求====》在類中封裝一個show_tool_count的類的方法踩叭,輸出使用當前這個類創(chuàng)建的對象個數(shù)。

圖片1.png

代碼:

class Tool(object):
    # 使用賦值語句定義類屬性,記錄所有工具對象的數(shù)量
    # 初始數(shù)量是0
    count = 0

    @classmethod
    def show_tool_count(cls):
        # 顯示工具對象的總數(shù)
        print("工具對象總數(shù) %d" % cls.count)

    def __init__(self, name):
        self.name = name
        # 每增加一個工具對象容贝,讓類屬性的值加1
        Tool.count += 1


# 創(chuàng)建工具對象
tool1 = Tool("扳手")

# 調(diào)用類方法
Tool.show_tool_count()

執(zhí)行結(jié)果:

圖片2.png

二自脯、靜態(tài)方法

2.1封裝靜態(tài)方法情況:

在開發(fā)時,如果需要在類中封裝一個方法斤富,這個方法既不需要訪問實例屬性或者調(diào)用實例方法膏潮,也不需要訪問類屬性或者調(diào)用類方法,這個時候满力,可以把這個方法封裝成一個靜態(tài)方法焕参。

2.2 定義語法

@classmethod  
def 靜態(tài)方法名():      
    pass
  • 靜態(tài)方法需要用修飾器@staticmethod來標識,告訴解釋器這是一個靜態(tài)方法

  • 靜態(tài)方法在定義時不需要指定第一個參數(shù)

調(diào)用靜態(tài)方法方式:不需要創(chuàng)建對象

類名.

代碼:

class Dog(object):
    @staticmethod
    def run():
        print("狗狗想跑一跑")


# 通過類名.調(diào)用及靜態(tài)方法->不需要創(chuàng)建對象
Dog.run()

執(zhí)行結(jié)果:

圖片3.png

更多相關(guān)Python教程可以移步去Python自學網(wǎng)從基礎(chǔ)入門免費課程開始油额,適合新手入門到精通全棧開發(fā)叠纷。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市悔耘,隨后出現(xiàn)的幾起案子讲岁,更是在濱河造成了極大的恐慌我擂,老刑警劉巖衬以,帶你破解...
    沈念sama閱讀 219,427評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異校摩,居然都是意外死亡看峻,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,551評論 3 395
  • 文/潘曉璐 我一進店門衙吩,熙熙樓的掌柜王于貴愁眉苦臉地迎上來互妓,“玉大人,你說我怎么就攤上這事坤塞》朊悖” “怎么了?”我有些...
    開封第一講書人閱讀 165,747評論 0 356
  • 文/不壞的土叔 我叫張陵摹芙,是天一觀的道長灼狰。 經(jīng)常有香客問我,道長浮禾,這世上最難降的妖魔是什么交胚? 我笑而不...
    開封第一講書人閱讀 58,939評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮盈电,結(jié)果婚禮上蝴簇,老公的妹妹穿的比我還像新娘。我一直安慰自己匆帚,他們只是感情好熬词,可當我...
    茶點故事閱讀 67,955評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般互拾。 火紅的嫁衣襯著肌膚如雪均践。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,737評論 1 305
  • 那天摩幔,我揣著相機與錄音彤委,去河邊找鬼。 笑死或衡,一個胖子當著我的面吹牛焦影,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播封断,決...
    沈念sama閱讀 40,448評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼斯辰,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了坡疼?” 一聲冷哼從身側(cè)響起彬呻,我...
    開封第一講書人閱讀 39,352評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎柄瑰,沒想到半個月后闸氮,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,834評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡教沾,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,992評論 3 338
  • 正文 我和宋清朗相戀三年蒲跨,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片授翻。...
    茶點故事閱讀 40,133評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡或悲,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出堪唐,到底是詐尸還是另有隱情巡语,我是刑警寧澤,帶...
    沈念sama閱讀 35,815評論 5 346
  • 正文 年R本政府宣布淮菠,位于F島的核電站男公,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏兜材。R本人自食惡果不足惜理澎,卻給世界環(huán)境...
    茶點故事閱讀 41,477評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望曙寡。 院中可真熱鬧糠爬,春花似錦、人聲如沸举庶。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,022評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至镀琉,卻和暖如春峦嗤,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背屋摔。 一陣腳步聲響...
    開封第一講書人閱讀 33,147評論 1 272
  • 我被黑心中介騙來泰國打工烁设, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人钓试。 一個月前我還...
    沈念sama閱讀 48,398評論 3 373
  • 正文 我出身青樓装黑,卻偏偏與公主長得像,于是被迫代替她去往敵國和親弓熏。 傳聞我的和親對象是個殘疾皇子恋谭,可洞房花燭夜當晚...
    茶點故事閱讀 45,077評論 2 355

推薦閱讀更多精彩內(nèi)容