真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

python3中的cached_property函數(shù)怎么用

小編給大家分享一下python3中的cached_property函數(shù)怎么用,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比匯川網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式匯川網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋匯川地區(qū)。費(fèi)用合理售后完善,十載實(shí)體公司更值得信賴。

這個(gè)函數(shù)與property()類似,但增加了緩存,對(duì)于計(jì)算復(fù)雜的屬性很有用。

舉例如下:

# 在沒有cached_property之前定義類屬性
class DataSet:
    def __init__(self):
        self._data = None
 
    @property
    def data(self):
        print('開始計(jì)算數(shù)據(jù)')
        if not self._data:
            # 計(jì)算data數(shù)據(jù)
            self._data = 10 * 10
            print('計(jì)算data數(shù)據(jù)')
        return self._data
 
obj = DataSet()
print(obj.data)
# 輸出
開始計(jì)算數(shù)據(jù)
計(jì)算data數(shù)據(jù)
100
 
print(obj.data)
# 輸出
開始計(jì)算數(shù)據(jù)
100

使用變量記錄屬性數(shù)據(jù),并在屬性計(jì)算是進(jìn)行判斷,防止計(jì)算多次

from functools import cached_property
class DataSet:
    @cached_property
    def data(self):
        print('開始計(jì)算數(shù)據(jù)')
        return 10 * 10
 
obj = DataSet()
print(obj.data)
# 輸出:
開始計(jì)算數(shù)據(jù)
100
 
print(obj.data)
# 輸出:
100

注意:不支持python中的異步編程:asyncio。

以上是python3中的cached_property函數(shù)怎么用的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!


新聞名稱:python3中的cached_property函數(shù)怎么用
文章來源:http://weahome.cn/article/gissgs.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部