python解析多層json操作示例
阿新 • • 發佈:2020-01-09
本文例項講述了python解析多層json操作。分享給大家供大家參考,具體如下:
原始檔案內容:
{ "MaskPolygonItem": { "0": { "BoundingBox": "354.105 221.957 379.764 96.2241","label": "Number","labelNum": 0,"polygon": "3,6" } },"channels": 3,"height": 1080,"width": 1920 }
修改並儲存程式碼
#coding=utf-8 import os import json #獲取目標資料夾的路徑 filedir = r'J:\NumberData\mrcnnHik\test' #獲取資料夾中的檔名稱列表 filenames=os.listdir(filedir) #遍歷檔名 for filename in filenames: filepath = filedir+'/'+filename # print(filepath) after = [] # 開啟檔案取出資料並修改,然後存入變數 with open(filepath,'r') as f: data = json.load(f) mask=data["MaskPolygonItem"] for zidian in mask: print(type(zidian)) mask[zidian]["polygon"] = '354 221,355 310,729 318,733 236' after = data # 開啟檔案並覆蓋寫入修改後內容 with open(filepath,'w') as f: #結構化輸出 data = json.dump(after,f,sort_keys=True,indent=4,separators=(',',': '))
修改之後內容(僅修改了polygon)
{ "MaskPolygonItem": { "0": { "BoundingBox": "354.105 221.957 379.764 96.2241","polygon": "354 221,733 236" } },"width": 1920 }
PS:這裡再為大家推薦幾款比較實用的json線上工具供大家參考使用:
線上JSON程式碼檢驗、檢驗、美化、格式化工具:
http://tools.jb51.net/code/json
JSON線上格式化工具:
http://tools.jb51.net/code/jsonformat
線上XML/JSON互相轉換工具:
http://tools.jb51.net/code/xmljson
json程式碼線上格式化/美化/壓縮/編輯/轉換工具:
http://tools.jb51.net/code/jsoncodeformat
線上json壓縮/轉義工具:
http://tools.jb51.net/code/json_yasuo_trans
更多Python相關內容感興趣的讀者可檢視本站專題:《Python操作json技巧總結》、《Python編碼操作技巧總結》、《Python資料結構與演算法教程》、《Python函式使用技巧總結》、《Python字串操作技巧彙總》、《Python入門與進階經典教程》及《Python檔案與目錄操作技巧彙總》
希望本文所述對大家Python程式設計有所幫助。