Python:類屬性喘落、類方法最冰、靜態(tài)方法的綜合案例—設計一個Game類

如果需要學習類屬性、類方法和靜態(tài)方法可以看我之前的文章稀火。

一、案例需求

1.設計一個Game類

2.屬性:

(1) 定義一個類屬性top_score記錄游戲的歷史最高分

(2) 定義一個實例屬性player_name記錄當前游戲的玩家姓名

3.方法:

(1) 靜態(tài)方法show_help顯示游戲幫助信息

(2) 類方法show_top_score顯示歷史最高分

(3) 實例方法start_game開始當前玩家的游戲

4.主程序步驟

(1) 查看幫助信息

(2) 查看歷史最高分

(3) 創(chuàng)建游戲對象凰狞,開始游戲

圖片1.png

分析:

需要設計一個游戲類篇裁,名字是Game赡若,在游戲類中定義兩個屬性和三個方法达布。

看第一個屬性歷史最高分,這個屬性和Game類有關而和每次游戲并沒有直接關系逾冬,所以定義成類屬性黍聂。第二個屬性身腻,當前玩家姓名产还,可能每次玩家不同所以定義成實例屬性脐区。

看方法牛隅,第一個顯示游戲幫助信息酌泰,這個只需要在游戲中顯示出提示的信息并不需要訪問類屬性和實例屬性,這種方法定義為靜態(tài)方法丈攒。第二個顯示歷史最高分授霸,歷史最高分是一個類屬性巡验,訪問類屬性的方法可以定義為類方法,第三個方法開始游戲碘耳,每次玩家開始游戲就需要調用這個方法显设,玩家姓名為實例屬性這個方法就直接定義為實例方法。

二辛辨、案例代碼

class Game():
    # 類屬性:歷史最高分捕捂,初始為0(計數器)
    top_score = 0

    def __init__(self, player_name):
        # 實例屬性
        self.player_name = player_name

    # 靜態(tài)方法
    @staticmethod
    def show_help():
        print("幫助信息:怪獸已進入主戰(zhàn)區(qū)")

    # 類方法
    @classmethod
    def show_top_score(cls):
        print("歷史最高分記錄 %d" % cls.top_score)

    # 實例方法
    def start_game(self):
        print("%s 玩家開始玩游戲了-----" % self.player_name)


# 1. 查看幫助信息
Game.show_help()

# 2. 查看歷史最高分
Game.show_top_score()

# 3.創(chuàng)建游戲對象瑟枫,開始游戲
game = Game("python自學網")
game.start_game()

執(zhí)行結果:

圖片2.png

三、案例小結

1指攒、實例方法:方法內部需要訪問實例屬性

l 實例方法內部可以使用 類名. 訪問類屬性

2慷妙、類方法:方法內部只需要訪問類屬性

3、靜態(tài)方法:方法內部允悦,不需要訪問實例屬性和類屬性

提問:

如果方法內部即需要訪問實例屬性又需要訪問類屬性膝擂,應該定義成什么方法?

答案:

定義為實例方法隙弛,因為架馋,類只有一個,在實例方法內部可以使用 類名. 訪問類屬性

以上案例把學習過的類屬性全闷、類方法叉寂、靜態(tài)方法知識點揉合到一起使用了一下,仔細看并沒有什么技術含量总珠,只是簡單的使用來熟悉使用方法屏鳍。

更多相關Python練習題可以移步去Python自學網 ,從基礎入門免費課程開始局服,逐步深入學習python全棧體系課程孕蝉,適合新手入門到精通全棧開發(fā)。

?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末腌逢,一起剝皮案震驚了整個濱河市降淮,隨后出現的幾起案子,更是在濱河造成了極大的恐慌搏讶,老刑警劉巖佳鳖,帶你破解...
    沈念sama閱讀 219,427評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現場離奇詭異媒惕,居然都是意外死亡系吩,警方通過查閱死者的電腦和手機,發(fā)現死者居然都...
    沈念sama閱讀 93,551評論 3 395
  • 文/潘曉璐 我一進店門妒蔚,熙熙樓的掌柜王于貴愁眉苦臉地迎上來穿挨,“玉大人,你說我怎么就攤上這事肴盏】剖ⅲ” “怎么了?”我有些...
    開封第一講書人閱讀 165,747評論 0 356
  • 文/不壞的土叔 我叫張陵菜皂,是天一觀的道長贞绵。 經常有香客問我,道長恍飘,這世上最難降的妖魔是什么榨崩? 我笑而不...
    開封第一講書人閱讀 58,939評論 1 295
  • 正文 為了忘掉前任谴垫,我火速辦了婚禮,結果婚禮上母蛛,老公的妹妹穿的比我還像新娘翩剪。我一直安慰自己,他們只是感情好彩郊,可當我...
    茶點故事閱讀 67,955評論 6 392
  • 文/花漫 我一把揭開白布肢专。 她就那樣靜靜地躺著,像睡著了一般焦辅。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上椿胯,一...
    開封第一講書人閱讀 51,737評論 1 305
  • 那天筷登,我揣著相機與錄音,去河邊找鬼哩盲。 笑死前方,一個胖子當著我的面吹牛,可吹牛的內容都是我干的廉油。 我是一名探鬼主播惠险,決...
    沈念sama閱讀 40,448評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼抒线!你這毒婦竟也來了班巩?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 39,352評論 0 276
  • 序言:老撾萬榮一對情侶失蹤嘶炭,失蹤者是張志新(化名)和其女友劉穎抱慌,沒想到半個月后,有當地人在樹林里發(fā)現了一具尸體眨猎,經...
    沈念sama閱讀 45,834評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡抑进,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,992評論 3 338
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現自己被綠了睡陪。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片寺渗。...
    茶點故事閱讀 40,133評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖兰迫,靈堂內的尸體忽然破棺而出信殊,到底是詐尸還是另有隱情,我是刑警寧澤汁果,帶...
    沈念sama閱讀 35,815評論 5 346
  • 正文 年R本政府宣布鸡号,位于F島的核電站,受9級特大地震影響须鼎,放射性物質發(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

推薦閱讀更多精彩內容