如果我有一个list
对象,其中嵌套了dict
类型的元素,并使用print
命令打印出列表。输出可能是这样的,全部按在一行。
[{'rule_range': u'ALL', 'rule_desc': u'\u6d4b\u8bd5\u89c4\u5219\u5b9e\u4f8b01', 'creator': u'65624', 'rule_tmpl_id': u'RT0001', 'order_id': u'1', 'id': 2L, 'def_ext_cols': None, 'rule_cycle': u'1', 'create_time': None, 'rule_expr': u'select * from records where year = 2000', 'def_cols': None, 'rule_status': u'1', 'rule_id': u'TEST0001', 'store': None, 'rule_name': u'TRuleInstance01'}, {'rule_range': u'ALL', 'rule_desc': u'\u6d4b\u8bd5\u89c4\u5219\u5b9e\u4f8b01', 'creator': u'65624', 'rule_tmpl_id': u'RT0001', 'order_id': u'2', 'id': 2L, 'def_ext_cols': None, 'rule_cycle': u'1', 'create_time': None, 'rule_expr': u'select * from records where temperature = 21', 'def_cols': None, 'rule_status': u'1', 'rule_id': u'TEST0001', 'store': None, 'rule_name': u'TRuleInstance01'}]
我想要的是一些格式化的输出字符串,是否有某种格式化程序(就像json在线格式化程序),或者它可以用python代码实现?非常感谢!
答案 0 :(得分:1)
您可以使用Pretty Print
from pprint import pprint
pprint(the_dict)
答案 1 :(得分:0)
我尝试使用@justhalf建议的漂亮打印。但是我很难做到这一点,直到我意识到我的dict太短(少于80个字符,这是pprint
的默认宽度)。我将宽度更改为20,现在可以正确打印:
import pprint
pprint.pprint([{"test":"value", "test2":"value"},{"test":[{"key":"value"}]}])
打印:
[{ 'test': 'value', 'test2': 'value'}, { 'test': [{ 'key': 'value'}]}]
但:
import pprint
pprint.pprint([{"test":"value", "test2":"value"},{"test":[{"key":"value"}]}], width=20)
打印:
[{'test': 'value',
'test2': 'value'},
{'test': [{'key': 'value'}]}]