使用json树数据以简化工作的库
JsonJ的Python项目详细描述
jsonj
jsonj是一个简单的python库,它允许将复杂的嵌套json树解析为简单的json数据。 此库允许将复杂的嵌套json数据转换为中间的简单json数据,从而更容易处理原始数据。
示例数据转换
########################## FROM #########################################{"menu": {"id": "file", "value": "File", "popup": {"menuitem": [{"value": "New", "onclick": "CreateNewDoc()"}, {"value": "Open", "onclick": "OpenDoc()"}, {"value": "Close", "onclick": "CloseDoc()"}]}}}########################### TO #########################################{'menu': {'path': 'menu', 'isRoot': True, 'children': ['menu/id', 'menu/value', 'menu/popup']}, 'menu/id': {'path': 'menu/id', 'isRoot': False, 'children': []}, . . . 'menu/popup/menuitem/2/value': {'path': 'menu/popup/menuitem/2/value', 'isRoot': False, 'children': []}, 'menu/popup/menuitem/2/onclick': {'path': 'menu/popup/menuitem/2/onclick', 'isRoot': False, 'children': []}}
如您所见,此转换格式非常优雅,可以应用于各种任务。
转换数据格式说明
. . . 'menu/popup/menuitem/2/value': {'path': 'menu/popup/menuitem/2/value', 'isRoot': False, 'children': []}, . . .
- 数据的键设置为该特定节点从根节点的路径
- 每个键都有一个值,而这个值又是一个包含3个参数的简单json。
- 路径:从根节点到特定节点的路径(与键的路径相同)
- isroot:要么是根节点要么不是
- 子节点:特定节点是否有子节点
安装
$ pip3 install JsonJ
使用量
from JsonJ import JsonJ json= JsonJ(<sample_json_data>)
注意:请确保json数据有效,从现在起,库不会检查数据是否有效,但此验证将很快完成
详细用法
- get_parsed_data() - This function call returns the Intermediate Parsed data - clean() - This function call clears all the data saved in local variables
发展
想做贡献吗?伟大的! 您所要做的就是请求并开始工作
待办事项
- 按节点搜索
- 按值搜索
- json数据验证器
- 还有很多事情要做
许可证
麻省理工学院
peace