欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python中g(shù)etsizeof和asizeof的區(qū)別小結(jié)

 更新時間:2025年09月17日 09:51:29   作者:Lumiron  
本文詳細(xì)的介紹了getsizeof和asizeof的區(qū)別,這兩個函數(shù)都用于獲取對象的內(nèi)存占用大小,它們來自不同的庫,下面就來詳細(xì)的介紹一下兩者的區(qū)別,感興趣的可以了解一下

sys.getsizeof (Python 內(nèi)置)

1、來源: Python 標(biāo)準(zhǔn)庫的 sys 模塊
2、功能: 返回對象的"直接"內(nèi)存占用,不包括對象引用的其他對象
3、特點(diǎn):
3.1、只計(jì)算對象本身的大小
3.2、對于容器類型(list, dict等),不計(jì)算容器內(nèi)元素的大小
3.3、是Python內(nèi)置函數(shù),無需額外安裝

pympler.asizeof.asizeof (第三方庫)

1、來源: Pympler 庫的 asizeof 模塊
2、功能: 遞歸計(jì)算對象及其所有引用對象的總內(nèi)存占用
3、特點(diǎn):
3.1、遞歸計(jì)算所有引用對象的大小
3.2、對于容器類型,會計(jì)算容器內(nèi)所有元素及其引用的大小
3.3、需要安裝 pympler 包 (pip install pympler)

使用場景

1、使用 sys.getsizeof 當(dāng)你想知道對象本身的內(nèi)存占用
2、使用 asizeof.asizeof 當(dāng)你想知道對象及其所有引用對象的完整內(nèi)存占用
對于復(fù)雜數(shù)據(jù)結(jié)構(gòu),asizeof 通常能給出更準(zhǔn)確的總內(nèi)存使用情況。

In [88]: aa=["a"]

In [89]: getsizeof(aa)
Out[89]: 64

In [90]: hex(id(aa))
Out[90]: '0x24ca6152480'

In [91]: getsizeof(aa[0])
Out[91]: 50

In [92]: hex(id(aa[0]))
Out[92]: '0x24ca2104cf0'

1、getsizeof和id的對像是一樣的,也就是說getsizeof獲取的不是這個列表以及所有內(nèi)容在內(nèi)存中的有效占用空間,而僅僅是這個列表表頭的占用空間。

這是表頭,即aa,選中的是他的元素表

這里大概就是存儲相關(guān)指針的一段空間

這是元素aa[0]

In [93]: aa.__iadd__("b")
Out[93]: ['a', 'b']

In [95]: getsizeof(aa)
Out[95]: 96

In [96]: hex(id(aa))
Out[96]: '0x24ca6152480'

In [98]: aa[1]="bb"

In [100]: getsizeof(aa)
Out[100]: 96

指針地址沒變,但是長度變了,至于后面多出的長度描述了什么,未知。但第二行標(biāo)志著有多少個元素,第二行后段仍是元素指針的地址

這里的指針應(yīng)該是單純的信息,前后無其他描述信息,靠著上上圖中的元素?cái)?shù)量索引

第一次增加元素,賦值為b,第二次增加aa[1]的長度,但aa的size未變,aa的size至與元素?cái)?shù)量有關(guān),也可能與元素類型有關(guān)。

看到列表了,里面有個函數(shù)

__sizeof__(self, /)
Return the size of the list in memory, in bytes.

好奇探究,又做了無意義的事!

到此這篇關(guān)于python中g(shù)etsizeof和asizeof的區(qū)別小結(jié)的文章就介紹到這了,更多相關(guān)python getsizeof asizeof 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 答題輔助python代碼實(shí)現(xiàn)

    答題輔助python代碼實(shí)現(xiàn)

    這篇文章主要為大家詳細(xì)介紹了答題輔助python代碼實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • JupyterNotebook 輸出窗口的顯示效果調(diào)整方法

    JupyterNotebook 輸出窗口的顯示效果調(diào)整方法

    這篇文章主要介紹了JupyterNotebook 輸出窗口的顯示效果調(diào)整方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • 深入解析python中的實(shí)例方法、類方法和靜態(tài)方法

    深入解析python中的實(shí)例方法、類方法和靜態(tài)方法

    這篇文章主要介紹了python中的實(shí)例方法、類方法和靜態(tài)方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • Python實(shí)現(xiàn)PDF到Word文檔的高效轉(zhuǎn)換

    Python實(shí)現(xiàn)PDF到Word文檔的高效轉(zhuǎn)換

    這篇文章主要為大家詳細(xì)介紹了如何使用Python編程語言,結(jié)合庫和工具,將PDF文件轉(zhuǎn)換為可編輯的Word文檔,使文檔的編輯變得方便高效,需要的可以參考下
    2024-01-01
  • TensorFlow梯度求解tf.gradients實(shí)例

    TensorFlow梯度求解tf.gradients實(shí)例

    今天小編就為大家分享一篇TensorFlow梯度求解tf.gradients實(shí)例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • python實(shí)現(xiàn)圖片上添加圖片

    python實(shí)現(xiàn)圖片上添加圖片

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)圖片上添加圖片,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-11-11
  • Python networkx包的實(shí)現(xiàn)

    Python networkx包的實(shí)現(xiàn)

    這篇文章主要介紹了Python networkx包的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02
  • 使用Python實(shí)現(xiàn)批量發(fā)送個性化郵件

    使用Python實(shí)現(xiàn)批量發(fā)送個性化郵件

    在現(xiàn)代工作環(huán)境中,我們經(jīng)常需要向多個收件人發(fā)送個性化的郵件,因此本文小編為大家整理了Python實(shí)現(xiàn)批量發(fā)送個性化郵件的示例代碼,希望對大家有所幫助
    2023-11-11
  • 一文詳細(xì)介紹Python中的OrderedDict對象

    一文詳細(xì)介紹Python中的OrderedDict對象

    OrderedDict是Python標(biāo)準(zhǔn)庫collections模塊的一部分,下面這篇文章主要給大家介紹了關(guān)于Python中OrderedDict對象的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-08-08
  • Python實(shí)戰(zhàn)之OpenCV實(shí)現(xiàn)貓臉檢測

    Python實(shí)戰(zhàn)之OpenCV實(shí)現(xiàn)貓臉檢測

    今天給大家?guī)淼氖顷P(guān)于Python的相關(guān)知識,文章圍繞著OpenCV實(shí)現(xiàn)貓臉檢測展開,文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下
    2021-06-06

最新評論