python解析多层json操作示例


Posted in Python onDecember 30, 2019

本文实例讲述了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",
      "label": "Number",
      "labelNum": 0,
      "polygon": "354 221,355 310,729 318,733 236"
    }
  },
  "channels": 3,
  "height": 1080,
  "width": 1920
}
Python 相关文章推荐
python 容器总结整理
Apr 04 Python
Python 3.6 性能测试框架Locust安装及使用方法(详解)
Oct 11 Python
Python基于xlrd模块操作Excel的方法示例
Jun 21 Python
Pyqt清空某一个QTreeewidgetItem下的所有分支方法
Jun 17 Python
基于Python获取照片的GPS位置信息
Jan 20 Python
Python 实现自动登录+点击+滑动验证功能
Jun 10 Python
Django实现随机图形验证码的示例
Oct 15 Python
Python之Sklearn使用入门教程
Feb 19 Python
Python项目实战之使用Django框架实现支付宝付款功能
Feb 23 Python
Django中的JWT身份验证的实现
May 07 Python
解决pycharm下载库时出现Failed to install package的问题
Sep 04 Python
Python之matplotlib绘制饼图
Apr 13 Python
pytorch 求网络模型参数实例
Dec 30 #Python
利用python3 的pygame模块实现塔防游戏
Dec 30 #Python
pytorch 批次遍历数据集打印数据的例子
Dec 30 #Python
python多线程使用方法实例详解
Dec 30 #Python
Python动态声明变量赋值代码实例
Dec 30 #Python
使用pytorch实现可视化中间层的结果
Dec 30 #Python
在Pytorch中计算自己模型的FLOPs方式
Dec 30 #Python
You might like
php 购物车的例子
2009/05/04 PHP
PHP概率计算函数汇总
2015/09/13 PHP
php 三元运算符实例详细介绍
2016/12/15 PHP
Django 中 cookie的使用
2017/08/17 PHP
PHP学习记录之常用的魔术常量详解
2019/12/12 PHP
javascript+xml技术实现分页浏览
2008/07/27 Javascript
javascript 写类方式之七
2009/07/05 Javascript
按给定几率进行随机抽取的js代码
2010/12/28 Javascript
artDialog 4.1.5 Dreamweaver代码提示/补全插件 附下载
2012/07/31 Javascript
js控制的回到页面顶端goTop的代码实现
2013/03/20 Javascript
jQuery使用$.get()方法从服务器文件载入数据实例
2015/03/25 Javascript
轻松搞定jQuery.noConflict()
2016/02/15 Javascript
JS仿Base.js实现的继承示例
2017/04/07 Javascript
详解Angular.js中$http拦截器的介绍及使用
2017/07/04 Javascript
vue使用axios实现文件上传进度的实时更新详解
2017/12/20 Javascript
create-react-app修改为多页面支持的方法
2018/05/17 Javascript
vue 实现tab切换保持数据状态
2020/07/21 Javascript
[01:39]2014DOTA2国际邀请赛 Newbee经理CU专访队伍火力全开
2014/07/15 DOTA
[55:44]OG vs NAVI 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
python从入门到精通(DAY 1)
2015/12/20 Python
深入了解Python中pop和remove的使用方法
2018/01/09 Python
Python列表解析配合if else的方法
2018/06/23 Python
Django实现分页功能
2018/07/02 Python
python学生信息管理系统(初级版)
2018/10/17 Python
解决Python plt.savefig 保存图片时一片空白的问题
2019/01/10 Python
Python3中编码与解码之Unicode与bytes的讲解
2019/02/28 Python
python学生管理系统学习笔记
2019/03/19 Python
python3发送邮件需要经过代理服务器的示例代码
2019/07/25 Python
Microsoft新加坡官方网站:购买微软最新软件和技术产品
2016/10/28 全球购物
珠宝的促销活动方案
2014/08/31 职场文书
2014年人事科工作总结
2014/11/19 职场文书
挂靠协议书
2015/01/27 职场文书
2015个人半年总结范文
2015/03/09 职场文书
家长会感言
2015/08/01 职场文书
学困生帮扶工作总结
2015/08/13 职场文书
html+css 实现简易导航栏功能
2021/04/07 HTML / CSS