国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

深入解析python中的實例方法、類方法和靜態(tài)方法

2020-01-04 13:36:42
字體:
供稿:網(wǎng)友

1、實例方法/對象方法

實例方法或者叫對象方法,指的是我們在類中定義的普通方法。
只有實例化對象之后才可以使用的方法,該方法的第一個形參接收的一定是對象本身

python,實例方法,類方法,靜態(tài)方法

2、靜態(tài)方法

(1).格式:在方法上面添加 @staticmethod
(2).參數(shù):靜態(tài)方法可以有參數(shù)也可以無參數(shù)
(3).應(yīng)用場景:一般用于和類對象以及實例對象無關(guān)的代碼。
(4).使用方式: 類名.類方法名(或者對象名.類方法名)。

定義一個靜態(tài)方法

class Game:  @staticmethod  def menu():    print('------')    print('開始[1]')    print('暫停[2]')    print('退出[3]')Game.menu()

3、類方法

無需實例化,可以通過類直接調(diào)用的方法,但是方法的第一個參數(shù)接收的一定是類本身
(1).在方法上面添加@classmethod
(2).方法的參數(shù)為 cls 也可以是其他名稱,但是一般默認(rèn)為cls
(3).cls 指向 類對象
(5).應(yīng)用場景:當(dāng)一個方法中只涉及到靜態(tài)屬性的時候可以使用類方法(類方法用來修改類屬性)。
(5).使用 可以是 對象名.類方法名。或者是 類名.類方法名

class Person:  type = '人類'  @classmethod  def test(cls):    print(cls.type)Person.test()

舉例:使用類方法對商品進(jìn)行統(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.__discountbanana = Goods('香蕉', 10)apple = Goods('蘋果', 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

以上所述是小編給大家介紹的python中的實例方法、類方法和靜態(tài)方法詳解整合,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對VEVB武林網(wǎng)網(wǎng)站的支持!


注:相關(guān)教程知識閱讀請移步到python教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 临澧县| 吴旗县| 灵山县| 东山县| 大城县| 马公市| 云龙县| 鹤岗市| 博野县| 德阳市| 科尔| 松阳县| 格尔木市| 东山县| 靖江市| 周宁县| 余干县| 固镇县| 南城县| 本溪市| 东光县| 镇康县| 团风县| 同江市| 二连浩特市| 高唐县| 伊金霍洛旗| 建水县| 阳曲县| 安庆市| 临颍县| 南华县| 敦煌市| 太康县| 罗甸县| 宁晋县| 桐城市| 策勒县| 温宿县| 咸丰县| 顺昌县|