成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

如何在python3中使用property-創(chuàng)新互聯(lián)

如何在python3中使用property?相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。

創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供安州網(wǎng)站建設(shè)、安州做網(wǎng)站、安州網(wǎng)站設(shè)計、安州網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、安州企業(yè)網(wǎng)站模板建站服務(wù),十多年安州做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。

property屬性

定義

一個可以使實例方法用起來像實例屬性一樣的特殊關(guān)鍵字,可以對應(yīng)于某個方法,通過使用property屬性,能夠簡化調(diào)用者在獲取數(shù)據(jù)的流程(使代碼更加簡明)。

property屬性的定義和調(diào)用要注意以下幾點:

調(diào)用時,無需括號,加上就錯了;并且僅有一個self參數(shù)

實現(xiàn)property屬性的兩種方式

裝飾器

新式類中的屬性有三種訪問方式,并分別對應(yīng)了三個被

  • @property對應(yīng)讀取

  • @方法名.setter修改

  • @方法名.deleter刪除屬性

class Goods:
 def __init__(self):
 self.age = 18
 
  @property
  def price(self): # 讀取
    return self.age
    
  # 方法名.setter
  @price.setter # 設(shè)置,僅可接收除self外的一個參數(shù)
  def price(self, value):
    self.age = value
    
  # 方法名.deleter
  @price.deleter # 刪除
  def price(self):
    del self.age

# ############### 調(diào)用 ###############
obj = Goods()  # 實例化對象 
obj.age  # 直接獲取 age屬性值
obj.age= 123   #  修改age的值
del obj.age  #  刪除age屬性的值

類屬性

當使用類屬性的方式創(chuàng)建property屬性時,property()方法有四個參數(shù)

  • 第一個參數(shù)是方法名,調(diào)用 對象.屬性 時自動觸發(fā)執(zhí)行方法

  • 第二個參數(shù)是方法名,調(diào)用 對象.屬性 = XXX 時自動觸發(fā)執(zhí)行方法

  • 第三個參數(shù)是方法名,調(diào)用 del 對象.屬性 時自動觸發(fā)執(zhí)行方法

  • 第四個參數(shù)是字符串,調(diào)用 對象.屬性.doc ,此參數(shù)是該屬性的描述信息

class Goods(object):
  def __init__(self):  
    self.price = 100  # 原價
    self.discount = 0.8 # 折扣

  def get_price(self):
    # 實際價格 = 原價 * 折扣
    new_price = self.price * self.discount
    return new_price

  def set_price(self, value):
    self.price = value

  def del_price(self):
    del self.price
   # 獲取    設(shè)置     刪除    描述文檔
  PRICE = property(get_price, set_price, del_price, '價格屬性描述...')
 # 使用此方式設(shè)置
 
obj = Goods()
obj.PRICE     # 獲取商品價格
obj.PRICE = 200  # 修改商品原價
del obj.PRICE   # 刪除商品原價

使用property取代getter和setter方法

使用@property裝飾器改進私有屬性的get和set方法

class Money(object):
  def __init__(self):
    self.__money = 0

  # 使用裝飾器對money進行裝飾,那么會自動添加一個叫money的屬性,當調(diào)用獲取money的值時,調(diào)用裝飾的方法
  @property
  def money(self):
    return self.__money

  # 使用裝飾器對money進行裝飾,當對money設(shè)置值時,調(diào)用裝飾的方法
  @money.setter
  def money(self, value):
    if isinstance(value, int):
      self.__money = value
    else:
      print("error:不是整型數(shù)字")

a = Money()
a.money = 100
print(a.money)

Python主要用來做什么

Python主要應(yīng)用于:1、Web開發(fā);2、數(shù)據(jù)科學研究;3、網(wǎng)絡(luò)爬蟲;4、嵌入式應(yīng)用開發(fā);5、游戲開發(fā);6、桌面應(yīng)用開發(fā)。

看完上述內(nèi)容,你們掌握如何在python3中使用property的方法了嗎?如果還想學到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計公司行業(yè)資訊頻道,感謝各位的閱讀!

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

本文題目:如何在python3中使用property-創(chuàng)新互聯(lián)
轉(zhuǎn)載源于:http://jinyejixie.com/article8/dsheip.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設(shè)計、建站公司、網(wǎng)站收錄、App設(shè)計、網(wǎng)站維護網(wǎng)站策劃

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)
海丰县| 屯留县| 邳州市| 永寿县| 绥化市| 武穴市| 达孜县| 原阳县| 滕州市| 潜山县| 东光县| 大冶市| 芜湖县| 庆阳市| 平舆县| 定日县| 洞口县| 肇州县| 沙湾县| 南平市| 贡觉县| 河曲县| 阳春市| 迁西县| 额尔古纳市| 和静县| 泰来县| 突泉县| 边坝县| 贡嘎县| 禄丰县| 阳西县| 兴文县| 太白县| 贞丰县| 静宁县| 德阳市| 凤凰县| 龙口市| 房产| 陕西省|