json數據示例
{"node":"a","subNodes":[{"node":"a1","subNodes":[{"node":"a11","subNodes":[{"node":"a111","subNodes":[]},{"node":"a112","subNodes":[]}]},{"node":"a12","subNodes":[]}]},{"node":"a2","subNodes":[]}]}
{"node":"b","subNodes":[{"node":"b1","subNodes":[{"node":"b11","subNodes":[{"node":"b111","subNodes":[]}]}]}]}
將json樣式數據存入a.txt文件中
遞歸解析json數據
# -*- coding:utf-8 -*-
import json
# 遞歸打印解析節點及路徑
def recursion(node_dict, node):
if len(node_dict) == 0:
tmp.append(node)
else:
for i in node_dict:
recursion(i.get('subNodes'), node+'-->'+i.get('node'))
f = open('a.txt')
for line in f:
data = json.loads(line)
node = data.get('node')
tmp = []
recursion(data.get('subNodes'), node)
for i in tmp:
print(node, ':', i)
# 一行輸出
# print(';'.join(tmp))
f.close()
輸出結果:
a : a-->a1-->a11-->a111
a : a-->a1-->a11-->a112
a : a-->a1-->a12
a : a-->a2
b : b-->b1-->b11-->b111
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
