中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python中property屬性的介紹及其應用詳解

發布時間:2020-10-03 15:24:24 來源:腳本之家 閱讀:180 作者:三國小夢 欄目:開發技術

Python的property屬性的功能是:property屬性內部進行一系列的邏輯計算,最終將計算結果返回。
使用property修飾的實例方法被調用時,可以把它當做實例屬性一樣

property的用法1——裝飾器方式

在類的實例方法上應用@property裝飾器

class Test:
  def __init__(self):
    self.__num = 100
  @property
  def num(self):
    print("--get--")
    return self.__num
  @num.setter
  def num(self, num):
    print("--set--")
    self.__num = num
t = Test()
print(t.num)
t.num = 1
"""
--get--
100
--set--
"""

property屬性的定義和調用要注意一下幾點:

  • 定義時,在實例方法的基礎上添加 @property 裝飾器;并且僅有一個self參數。
  • 調用時,無需括號。
  • 經典類中的屬性只有一種訪問方式,其對應被 @property 修飾的方法。
  • 新式類中的屬性有三種訪問方式,并分別對應了三個被@property、@方法名.setter、@方法名.deleter修飾的方法。
  • Python中的類有經典類和新式類,新式類的屬性比經典類的屬性豐富。( 如果類繼object,那么該類是新式類 ),python3中的類都是新式類。

property的用法2——類屬性方式

當使用類屬性的方式創建property屬性時,經典類和新式類無區別

class Test:
  def __init__(self):
    self.__num = 100
  def setNum(self, num):
    print("--set--")
    self.__num = num
  def getNum(self):
    print("--get--")
    return self.__num
  # 注意:要先寫get方法,再寫set方法
  aa = property(getNum, setNum)
t = Test()
print(t.aa)
t.aa = 1

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

东乌| 读书| 舞阳县| 定结县| 常州市| 新巴尔虎右旗| 普洱| 喀什市| 禄丰县| 绥中县| 荣昌县| 长武县| 抚松县| 南阳市| 洛隆县| 囊谦县| 平乡县| 广宗县| 江源县| 富阳市| 滕州市| 丽水市| 霍山县| 巴彦县| 娄烦县| 塔城市| 子长县| 兴安县| 南安市| 资讯| 汨罗市| 嘉祥县| 农安县| 千阳县| 浦城县| 米泉市| 泉州市| 綦江县| 教育| 德惠市| 吉安县|