每当我尝试从 python 打印出 json 时,它都会忽略换行符并打印文字字符串“\n”而不是换行符。
我正在使用 jinja2 生成 json。这是我的代码:
print json.dumps(template.render(**self.config['templates'][name]))
它打印出下面 block 中的所有内容(字面意思——甚至是引号和“\n”字符串):
"{\n \"AWSTemplateFormatVersion\" : \"2010-09-09\",\n \"Description\" : ...
(截断)
每当我尝试转储除 dict 以外的任何内容时,我都会得到类似的结果。即使我尝试 json.loads() 然后再次转储它,我也会得到垃圾。它只是去除所有换行符。
出了什么问题?
最佳答案
这是我用于 pretty-print json 对象的内容:
def get_pretty_print(json_object):
return json.dumps(json_object, sort_keys=True, indent=4, separators=(',', ': '))
print get_pretty_print(my_json_obj)
json.dumps()
如果您需要非 ascii 支持,也接受编码参数。
关于python - 不能从 python 漂亮地打印 json,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16318543/