我在 Jupyter 笔记本中运行 Python 2.7。我正在使用大型嵌套字典,有时打印出其中一个会很有帮助。
使用 pprint.pprint 是在屏幕上获取 dict 的可读版本的好方法。但是对于特别大的字典,这可能意味着打印一百万行,这会使笔记本崩溃(我认为我的浏览器无法处理它)。
在 bash 终端上,我习惯于将东西扔进 a| head
中,但在 python 中似乎没有通用的方法。
我写了这个方法:
from pprint import pformat, pprint
def pprint_head(to_print,length=10)
formatted=pformat(to_print).splitlines()
pprint(formatted[:min(len(formatted),length)])
它有效,但我想知道
- 有更好/更规范/内置/'pythonic'的方法吗?
- 这些小问题可以改进吗?(按优先顺序):
- 大物体的速度很慢。
- 它对大对象使用大量内存。
- 它被打印为字符串列表,因此它在开头有 [ 并在每行周围加上引号。
我还想知道是否有“Jupyter”解决方案(即告诉 Jupyter 只接受任何打印的前 x 行?)