前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一招带你带你解析 JSON 串

一招带你带你解析 JSON 串

作者头像
编程文青李狗蛋
发布2019-11-07 16:29:10
5790
发布2019-11-07 16:29:10
举报
文章被收录于专栏:编程文青李狗蛋
本文字数:1311 字 阅读本文大概需要:4 分钟

我在之前的「零基础入门学习 Python」这个系列中,写过关于 JOSN 的文章 -- Python 标准库之 JSON ,没看的可以看一下。JSON 是一种轻量级的数据交换格式,对于我们的阅读和编写十分之友好,同时对机器来说也很容易解析和生成。

如果你已经是学过或者做过一段时间的编程,你可能会发现这么一个现象,那就是 JSON 好像随随便便就能在某个犄角旮旯里看到,这正是由它的诸多优点决定的。随着 JSON 使用越广泛,这种诸如需要将 JSON 字符串转化为 JSON 对象的需求就越频繁。

我光在这说「频繁」,到底这么才算是频繁呢?我们总得摆事实,讲道理,不能我们张嘴说它频繁它就频繁。让我们来打开 Google,然后输入 JSON,查询一下,处于搜索结果第一项的便是「JSON在线解析及格式化验证」。

还记得我们之前讲过的「日志」么,如果不记得或者忘记了,可以再看看这篇文章 -- 所有 Python 程序员必须要学会的「日志」记录。 在一些实际的工作过程中,系统会经常调用底层服务的接口,这些接口一般用 JSON 的格式返回,为了便于查找问题的所在,我们一般将这些 JSON 转化为字符串然后保存到日志文件中。当我们遇到什么问题的时候只需要将这些日志中的 JSON 字符串拿出来分析分析就好了。在这个时候,我们就需要将一个 JSON 字符串转化为 JSON 对象,以便于阅读。

在上面用 Google 搜索的时候提到了「JSON在线解析及格式化验证」,这是一种转化的方法。那除了这种打开浏览器用在线工具以外,是不是还有别的更巧妙的方法?俗话不是说求人不如求己么,万一哪天没网了刚好想转化那可咋整?

提醒一下,现在我们用的可是 Python 啊,号称「省心省力,自力更生」的典范,怎么可能被这种小事儿给难倒,python 早就给我们想到了,那就是用命令行终端的 Python 解释器来解析 JSON。请看下面示例:

代码语言:javascript
复制
echo '{"name":"rocky","like":"python","age":23}' | python -m json.tool

输出结果如下所示:

代码语言:javascript
复制
{
    "age": 23,
    "like": "python",
    "name": "rocky"
}

这种使用命令行解释器解释 Python 串非常方便,而且你看上面输出的结果就可以发现,工具还会自动将转化的结果进行对齐和格式化,真的是非常的便于阅读。为了更直观的来看,我们来看一个复杂些的例子:

代码语言:javascript
复制
echo '{"name":{"first":"rocky","second":"leey"},"like":"python","age":23}' | python -m json.tool

显示的结果如下:

代码语言:javascript
复制
{
    "age": 23,
    "like": "python",
    "name": {
        "first": "rocky",
        "second": "leey"
    }
}

ps:最后想说,不好意思这周拖到今天才更技术文,最近牙龈上火加上天气突变受凉,一下子病了,发烧了三天,写下这篇文章的时候我还是是顶着 41 度可以烤红薯的脑袋。说这个不是为了卖惨,主要是后台有一些朋友问起没更新的问题,就不一一回复了,在这就算回答了。天气渐凉,大家注意身体,我尽快好起来,给大家更文。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-11-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python空间 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档