如何在Windows中查找python进程/对象使用的内存总量

Ale*_*lex 3 python windows memory-management

我有一些脚本将大量数据加载到内存中.我想知道存储在内存中的数据有多高效.所以,我希望能够知道在加载数据之前以及加载数据之后python使用了多少内存.另外我想知道,如果它是某种方式来检查复杂对象的内存使用情况.假设我有嵌套字典,里面有不同类型的数据.我怎么知道这本词典中所有数据使用了多少内存.谢谢,亚历克斯

drx*_*zcl 5

据我所知,没有简单的方法可以看出某个对象的内存消耗是多少.这将是一件非常重要的事情,因为引用可以在对象之间共享.

以下是我最喜欢的两种解决方法:

  1. 使用流程管理器.让程序在分配之前暂停.记下分配前使用的内存.分配.分配后记下内存.这是一种低技术方法,但它有效.
  2. 或者,您可以使用pickle.dump序列化数据结构.生成的pickle在大小上与在内存中存储数据结构所需的空间相当(不相同!).为了获得更好的结果,请使用二进制pickle协议.