91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何使用Python實現計算對象的內存大小

發布時間:2021-04-07 09:50:35 來源:億速云 閱讀:272 作者:小新 欄目:開發技術

這篇文章主要介紹了如何使用Python實現計算對象的內存大小,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

具體如下:

一般的sys.getsizeof()顯示不了復雜的字典。

查看類中的內容:

def dump(obj):
 for attr in dir(obj):#dir顯示類的所有方法
  print(" obj.%s = %r" % (attr, getattr(obj, attr)))

這里用遞歸調用所有對象的getsizeof:

def get_size(obj, seen=None):
 # From https://goshippo.com/blog/measure-real-size-any-python-object/
 # Recursively finds size of objects
 size = sys.getsizeof(obj)
 if seen is None:
  seen = set()
 obj_id = id(obj)
 if obj_id in seen:
  return 0
# Important mark as seen *before* entering recursion to gracefully handle
 # self-referential objects
 seen.add(obj_id)
 if isinstance(obj, dict):
  size += sum([get_size(v, seen) for v in obj.values()])
  size += sum([get_size(k, seen) for k in obj.keys()])
 elif hasattr(obj, '__dict__'):
  size += get_size(obj.__dict__, seen)
 elif hasattr(obj, '__iter__') and not isinstance(obj, (str, bytes, bytearray)):
  size += sum([get_size(i, seen) for i in obj])
 return size

感謝你能夠認真閱讀完這篇文章,希望小編分享的“如何使用Python實現計算對象的內存大小”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

犍为县| 宁远县| 林周县| 奉贤区| 绍兴市| 南江县| 龙游县| 遂昌县| 广河县| 永仁县| 金山区| 通许县| 普兰县| 阜平县| 正镶白旗| 甘谷县| 馆陶县| 蚌埠市| 芜湖市| 黑龙江省| 布拖县| 雅安市| 赤壁市| 平江县| 泗水县| 邹平县| 滦南县| 深水埗区| 同仁县| 梁平县| 建瓯市| 九江县| 南乐县| 杭锦旗| 乃东县| 庆云县| 岐山县| 新绛县| 兴山县| 米脂县| 静海县|