import pprint
import json
from urllib.request import urlopen # (Only used to get this example)
# Getting a JSON example for this example
r = urlopen("https://mdn.github.io/fetch-examples/fetch-json/products.json")
text = r.read()
# To print it
pprint.pprint(json.loads(text))
7 回答
为了能够从命令行进行漂亮打印并能够控制缩进等,您可以设置类似于此的别名:
然后以下列方式之一使用别名:
你可以使用内置的pprint .
如何使用json数据读取文件并将其打印出来 .
json
模块已经使用indent
参数实现了一些基本的漂亮打印:要解析文件,请使用
json.load()
:您可以在命令行上执行此操作:
(正如问题评注中已经提到的那样) .
实际上,就命令行上的json处理而言,python不是我最喜欢的工具 . 对于简单漂亮的打印是可以的,但如果你想操纵json,它可能会变得过于复杂 . 你很快就需要编写一个单独的脚本文件,你可能最终得到的键是你的“某些键”(python unicode),这使得选择字段变得更加困难而且并没有真正朝着漂亮的方向发展 . - 印刷 .
我用jq . 以上可以通过以下方式完成:
并且您获得颜色作为奖励(以及更容易扩展的方式) .
Pygmentize Python json.tool =使用语法突出显示的漂亮打印
Pygmentize是一种杀手级工具 . See this.
我将python json.tool与pygmentize结合起来
有关pygmentize安装说明,请参阅上面的链接 .
这个演示如下图所示:
使用这个功能,不要再记得你的JSON是否是
str
或dict
- 只需看看漂亮的印刷品:下面是一个简单的例子,在Python中以一种很好的方式将JSON打印到控制台,而不需要JSON作为本地文件在您的计算机上: