如何在python中轻松显示顶级数据结构

时间:2015-10-30 14:34:38

标签: python object hierarchy

我在python中使用(适度)大型复杂结构化数据对象。 这是我从json导入的东西,所以它是dicts和列表的层次结构。数据在在线json分层浏览器中看起来很可爱。但是我在Python中导航时遇到了麻烦。

如果我输入

pprint(data)

它在控制台中为我提供了30页的输出。 如果我只想列出例如树的前两个级别怎么办? 因此,例如,如果我有一个dicts列表(例如,每个都有几个键包含几个列表的键列表),并且在最低级别有数字和字符串。

如何(以文本形式)显示更高级别的部分?

与此同时,我采用了具有树视图的IDE。 但是在控制台中肯定有可能吗?这一定是一个长期存在的问题 - 人们需要一直这样做吗?

1 个答案:

答案 0 :(得分:5)

是的,漂亮的印刷品就是这样;从the documentation开始,使用depth = n关键字参数:

>>> tup = ('spam', ('eggs', ('lumberjack', ('knights', ('ni', ('dead',
... ('parrot', ('fresh fruit',))))))))
>>> pp = pprint.PrettyPrinter(depth=6)
>>> pp.pprint(tup)
('spam', ('eggs', ('lumberjack', ('knights', ('ni', ('dead', (...)))))))

您可以将该参数直接传递给pprint.pprint:

>>> pprint.pprint(tup, depth=6)
('spam', ('eggs', ('lumberjack', ('knights', ('ni', ('dead', (...)))))))