当前位置:首页 >> 脚本专栏

python之生成多层json结构的实现

网上关于生成多层json结构的比较少,基本都是关于添加元素,解析,怎么转化为json之类的

下面就以文章信息的json为基础来构建多层json。

生成最基本的一个json:

import json

article_info = {}
data = json.loads(json.dumps(article_info))

data['article1'] = 'NONE'

article = json.dumps(data, ensure_ascii=False)
print(article)

将运行结果拿到https://www.json.cn/ 的校验网站上去看下:

python之生成多层json结构的实现

将一个json嵌套进去:

import json

article_info = {}
data = json.loads(json.dumps(article_info))

data['article1'] = 'NONE'

article2 = {'title': 'python基础', 'publish_time': '2019-4-1', 'writer': {}}
data['article2'] = article2

article = json.dumps(data, ensure_ascii=False)
print(article)

校验结果:

python之生成多层json结构的实现

下面将writer的信息(json)插入其中:

import json

article_info = {}
data = json.loads(json.dumps(article_info))

data['article1'] = 'NONE'

article2 = {'title': 'python基础', 'publish_time': '2019-4-1', 'writer': {}}
data['article2'] = article2

writer = {'name': '李先生', 'sex': '男', 'email': 'xxx@gmail.com'}
data['article2']['writer'] = writer

article = json.dumps(data, ensure_ascii=False)
print(article)

校验结果:

python之生成多层json结构的实现

这样多层json结构已完成。

补充拓展:python 读取多层嵌套的json数据

模块名称:jsonpath

主要特点

支持路径及*模糊匹配
支持索引和类似切片功能
支持表达式筛选

jsonpath安装

pip install jsonpath

jsonpath基本语法

python之生成多层json结构的实现

jsonpath使用示例

json样例:

python之生成多层json结构的实现

代码:

from jsonpath import jsonpath

python之生成多层json结构的实现

说明:

1. 匹配结果为一个列表, 无结果返回False

2. 逐级取值, 可使用*代表任意节点 .. 表示任意路径

以上这篇python之生成多层json结构的实现就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。