如何使用 python 的孔雀鱼打印所有行

Nwl*_*lis 5 python heap-memory guppy

我正在使用 python 的 guppy 来查看 python 程序中的堆使用情况。我愿意:

h = hpy
hp = h.heap()
print hp
Run Code Online (Sandbox Code Playgroud)

这是产生的输出:

Partition of a set of 339777 objects. Total size = 51680288 bytes.
 Index  Count   %     Size   % Cumulative  % Kind (class / dict of class)
     0 137974  41 17732032  34  17732032  34 str
     1  93077  27  8342072  16  26074104  50 tuple
     2    992   0  3428864   7  29502968  57 dict of module
     3  23606   7  3021568   6  32524536  63 types.CodeType
     4  23577   7  2829240   5  35353776  68 function
     5   2815   1  2541648   5  37895424  73 type
     6   2815   1  2513128   5  40408552  78 dict of type
     7   2112   1  2067840   4  42476392  82 dict (no owner)
     8   4495   1  1729792   3  44206184  86 unicode
     9   4026   1   671376   1  44877560  87 list
<972 more rows. Type e.g. '_.more' to view.>
Run Code Online (Sandbox Code Playgroud)

如何打印所有行?

小智 3

使用 all 方法来显示所有行。

import decimal
from guppy import hpy

d = {
    "int": 0,
    "float": 0.0,
    "dict": dict(),
    "set": set(),
    "tuple": tuple(),
    "list": list(),
    "str": "a",
    "unicode": u"a",
    "decimal": decimal.Decimal(0),
    "object": object(),
}


hp = hpy()
heap = hp.heap()
print(heap.all)
Run Code Online (Sandbox Code Playgroud)