1、實(shí)例方法/對(duì)象方法
實(shí)例方法,或?qū)ο蠓椒?,是指我們?cè)谝粋€(gè)類(lèi)中定義的普通方法。
只有在對(duì)象實(shí)例化后才能使用的方法。方法的第一個(gè)參數(shù)必須是對(duì)象本身。
2、靜態(tài)方法
(1).:在方法上方加@
(2).參數(shù):靜態(tài)方法可以有參數(shù)也可以沒(méi)有參數(shù)
(3)。應(yīng)用場(chǎng)景:一般用于與類(lèi)對(duì)象和實(shí)例對(duì)象無(wú)關(guān)的代碼。
(4).用法:類(lèi)名.類(lèi)方法名(或?qū)ο竺?類(lèi)方法名)。
定義一個(gè)靜態(tài)方法
class Game: @staticmethoddef menu(): print('------') print('開(kāi)始[1]') print('暫停[2]') print('退出[3]') Game.menu()
3、類(lèi)方法
可以直接通過(guò)類(lèi)調(diào)用的方法懶貓注冊(cè)機(jī)使用方法藝術(shù)心形筆刷下載,不需要實(shí)例化,但是方法的第一個(gè)參數(shù)必須是類(lèi)本身
(1).在方法上方添加@
(2)。方法的參數(shù)是cls或者其他名字復(fù)古直線花紋筆刷下載,但一般默認(rèn)為cls
(3).cls 指向類(lèi)對(duì)象
(5)。應(yīng)用場(chǎng)景:方法中只涉及靜態(tài)屬性時(shí)可以使用類(lèi)方法(類(lèi)方法用于修改類(lèi)屬性)。
(5).use可以是對(duì)象名.類(lèi)方法名.或者類(lèi)名.類(lèi)方法名
class Person: type = '人類(lèi)' @classmethod def test(cls): print(cls.type)Person.test()
示例:使用類(lèi)方法統(tǒng)一打折商品
class Goods: __discount = 1 def __init__(self, name, price): self.name = name self.price = price @classmethod def change_discount(cls, new_discount): cls.__discount = new_discount @property def finally_price(self): return self.price * self.__discount banana = Goods('香蕉', 10)apple = Goods('蘋(píng)果', 16) Goods.change_discount(0.8) print(banana.finally_price) print(apple.finally_price) Goods.change_discount(0.5) print(banana.finally_price) print(apple.finally_price)
輸出是:
8.0
12.8
5.0
8.0
以上就是小編介紹的實(shí)例方法、類(lèi)方法和靜態(tài)方法的詳細(xì)解釋和整合。我希望它對(duì)你有幫助。如有任何問(wèn)題懶貓注冊(cè)機(jī)使用方法,請(qǐng)給我留言裝飾筆刷下載,小編會(huì)及時(shí)回復(fù)您。非常感謝您對(duì)網(wǎng)站的支持!