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

python中property屬性的介紹及其應(yīng)用詳解

系統(tǒng) 1684 0

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

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

在類的實例方法上應(yīng)用@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屬性的定義和調(diào)用要注意一下幾點:

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

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

當使用類屬性的方式創(chuàng)建property屬性時,經(jīng)典類和新式類無區(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
          

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。


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

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

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

【本文對您有幫助就好】

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

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 长治市| 兰州市| 天镇县| 岚皋县| 丁青县| 秦安县| 和硕县| 游戏| 巨鹿县| 庄浪县| 珲春市| 临汾市| 和硕县| 敖汉旗| 高州市| 固始县| 安平县| 大邑县| 额济纳旗| 富锦市| 波密县| 乌海市| 多伦县| 克拉玛依市| 绩溪县| 罗源县| 望城县| 永兴县| 富顺县| 福建省| 马鞍山市| 高阳县| 邯郸县| 武强县| 永平县| 遂平县| 厦门市| 蓬安县| 方城县| 赤峰市| 郓城县|