日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

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

系統(tǒng) 1764 0

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參數(shù)。
  • 調用時,無需括號。
  • 經典類中的屬性只有一種訪問方式,其對應被 @property 修飾的方法。
  • 新式類中的屬性有三種訪問方式,并分別對應了三個被@property、@方法名.setter、@方法名.deleter修飾的方法。
  • Python中的類有經典類和新式類,新式類的屬性比經典類的屬性豐富。( 如果類繼object,那么該類是新式類 ),python3中的類都是新式類。

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

當使用類屬性的方式創(chuàng)建property屬性時,經典類和新式類無區(qū)別

            
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
          

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


更多文章、技術交流、商務合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 松滋市| 九龙城区| 朝阳区| 两当县| 通榆县| 永川市| 钟祥市| 沂源县| 安新县| 公安县| 长春市| 玉门市| 赣州市| 永平县| 东辽县| 景宁| 建湖县| 丹寨县| 夏河县| 三明市| 衡南县| 道孚县| 芮城县| 磴口县| 闽侯县| 晋江市| 江山市| 伊金霍洛旗| 大兴区| 太白县| 瑞丽市| 比如县| 泾阳县| 南乐县| 黑龙江省| 康平县| 蒙山县| 临安市| 江达县| 浙江省| 资兴市|