Pympler获取obj的内存使用情况

2024-10-02 22:27:33 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要使用Pympler和获取对象内存使用情况的帮助。我是这样用的:

from pympler import classtracker

myObj = SomeClass()
tr = classtracker.ClassTracker()
tr.track_object(myObj)

# Do stuff with object here

# Print stats
tr.create_snapshot()
tr.stats.print_summary()

这很好,我得到了以下结果:

^{pr2}$

我的问题是如何得到平均数并将其放入变量中?我在文件里找不到任何东西。我正在运行一些测试,希望得到测试生命周期内的平均值。如果你知道一个方法,或者如果有任何其他的包,我可以用来完成我想要的,请告诉我。谢谢您。在


Tags: 对象内存fromimportobjectstats情况track
1条回答
网友
1楼 · 发布于 2024-10-02 22:27:33

你可以用asizeof函数来实现,你甚至不需要使用classtracker(除非你正在使用一些更复杂的功能)

from pympler.asizeof import asizeof

class SomeClass:
    def __init__(self):
        self.list = []
    def append(self, i):
        self.list.append(i)

myObj = SomeClass()

myObj.append("Hello")
myObj.append("World")

print 'Sizeof myObj is {}'.format(asizeof(myObj))

相关问题 更多 >