我使用此代码打印出更漂亮一些dict
成JSON:漂亮打印JSON转储
import json
d = {'a': 'blah', 'b': 'foo', 'c': [1,2,3]}
print json.dumps(d, indent = 2, separators=(',', ': '))
输出:
{
"a": "blah",
"c": [
1,
2,
3
],
"b": "foo"
}
这是一个有点太多(换行符每个列表元素!)。
我应该使用哪种语法有...
{
"a": "blah",
"c": [1, 2, 3],
"b": "foo"
}
呢?
这不完全是您的问题的答案,但是如果您只是在寻找一种简单易用的数据格式眼睛,你可以试试YAML。对列表和字典等集合有两种语法,“块”(其中缩进显示嵌套)和“流”(括号用于执行该作业)。默认情况下,PyYAML的输出对不包含任何其他容器的列表和字典使用“流”语法,这听起来像你想要的漂亮打印。 – Blckknght
谢谢@Blckknght。YAML是成熟的/稳定的/便携式的,并且可能在未来几年/未来版本的Python中可用?它会成为一个标准吗? (抱歉,所有这些问题;)) – Basj
另一个评论:我想避免转换成字符串,因为当我'加载'我的JSON文件到'Dict',如果它是一个字符串,我没有访问了到'列表'(或者我需要解析字符串到列表中,但这是一个耻辱,必须这样做...) – Basj