python中的懶惰載入問題(延遲載入)

2021-10-04 15:08:48 字數 759 閱讀 9287

python中的懶惰載入用途非常多,可以節省記憶體,其主要的思想就是延遲載入需要例項化的類。python是通過getattr和setattr實現的,**和使用方法如下。

class lazy(object):

def __init__(self, lazy_object, *args, **kwargs):

self.__dict__["args"] = args

self.__dict__["kwargs"] = kwargs

def __getattr__(self, item, *args, **kwargs):

self.init_object()

if item in self.__dict__.keys():

return self.__dict__[item]

else:

def __setattr__(self, key, value):

self.init_object()

def init_object(self):

class user:

def __init__(self, x):

print("10000")

self.name = x

self.age = 18

def get_text(self):

print(self.name)

user = lazy(user, "libai")

user.get_text()

python中從for迴圈延申到推導式的具體使用

本文採用循序漸進的寫法,逐步遞進.傳統for迴圈 獲取1到1000000的偶數 採用傳統寫法 俗稱普通解析 for i in range 1,10 6 1 if i 2 0 print i 程式執行結果 2 4 1000000 總結 從直觀上對 進行評價 能完成要求,但是 不夠簡潔.改進後的 採用列...

JS,CSS載入中的小問題

在js指令碼中,存在兩個window.onload window.onload function window.onload function 只會執行乙個,這是本身函式的設定,值得注意的是,彈出的不是aaa,而是bbb,執行的是最後乙個 在css檔案中,css樣式中 checks checks 也...

webpack中css載入滯後的問題

使用webpack打包css 使用到兩個loadercss loaderstyle loader css loader 解析js中引入的css style loader 把css內容插入的標籤中 const path require path const htmlwebpackplugin requ...