![cc6f812950b13e69e929c72f4496e818.png](https://i-blog.csdnimg.cn/blog_migrate/8f6eebb0b36cb50e02d3e0b4bd05a42d.jpeg)
把信息用json格式存到文本中,好处是简捷、易编辑,并且有强大的表达能力;缺点是从文本cat出来的是一堆难以阅读的字符串,没有换行和缩进。
使用python的json.tool模块可以快捷地格式化json数据。
json/tool.py是一个命令行工具,json模块可用来校验和格式化json数据。
![9d7c253f815cf50824a28d6f7ab27f9d.png](https://i-blog.csdnimg.cn/blog_migrate/953995347ca092836f632388769eb676.jpeg)
没有换行和缩进的json数据
如上图所示,a.txt是一个没有换行和缩进的json数据。
在命令行中,可直接输入以下命令:
python -m json.tool a.txt
![d9a3a01133e29bda14ab9893b32f7063.png](https://i-blog.csdnimg.cn/blog_migrate/bd2f3744f64d4b6bc59917020ec9c242.jpeg)
格式化json数据
可以发现,自动增加换行和缩进,这样大大方便了阅读。
若用Vim打开json数据,则可切到命令行模式下,输入以下命令,就可以自动增加换行和缩进:
:%!python3 -m json.tool
![f89a24214c02b0ed7a548da77d5e1f70.png](https://i-blog.csdnimg.cn/blog_migrate/fa984ebd9838861aa5075a525a9a2649.jpeg)
Vim中格式化json数据
上述命令解释如下:
- % 表示针对全部的行范围
- ! 表示调用外部命令
- -m 选项用于指定模块的名字,并将对应的.py文件作为脚本运行,这里运行的脚本就是json/tool.py。
![46daeabaabdca62af32ac70d659c9793.png](https://i-blog.csdnimg.cn/blog_migrate/f36431a197f6a99695434b7496f4b52f.jpeg)