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中shape计算矩阵的方法示例
Apr 21 Python
Python实现登录接口的示例代码
Jul 21 Python
Python列表list内建函数用法实例分析【insert、remove、index、pop等】
Jul 24 Python
Python实现识别手写数字大纲
Jan 29 Python
python3 读取Excel表格中的数据
Oct 16 Python
Pandas Shift函数的基础入门学习笔记
Nov 16 Python
Python小工具之消耗系统指定大小内存的方法
Dec 03 Python
使用python实现语音文件的特征提取方法
Jan 09 Python
python pcm音频添加头转成Wav格式文件的方法
Jan 09 Python
nginx黑名单和django限速,最简单的防恶意请求方法分享
Aug 09 Python
python tkinter canvas使用实例
Nov 04 Python
Python流程控制语句的深入讲解
Jun 15 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 INI配置文件的解析实现分析
2011/01/04 PHP
基于PHP中的常用函数回顾
2013/07/11 PHP
php截取html字符串及自动补全html标签的方法
2015/01/15 PHP
基于php的微信公众平台开发入门实例
2015/04/15 PHP
PHP构造函数与析构函数用法示例
2016/09/28 PHP
laravel通过a标签从视图向控制器实现传值
2019/10/15 PHP
event.keyCode键码值表 附只能输入特定的字符串代码
2009/05/15 Javascript
跟着Jquery API学Jquery之一 选择器
2010/04/07 Javascript
js sort 二维数组排序的用法小结
2014/01/24 Javascript
使用AOP改善javascript代码
2015/05/01 Javascript
js强制把网址设为默认首页
2015/09/29 Javascript
Node.js静态服务器的实现方法
2018/02/28 Javascript
vue2实现搜索结果中的搜索关键字高亮的代码
2018/08/29 Javascript
node.js使用express框架进行文件上传详解
2019/03/03 Javascript
vue自定义指令directive的使用方法
2019/04/07 Javascript
微信小程序引入VANT组件的方法步骤
2019/09/19 Javascript
H5实现手机拍照和选择上传功能
2019/12/18 Javascript
vue动态设置页面title的方法实例
2020/08/23 Javascript
vant picker+popup 自定义三级联动案例
2020/11/04 Javascript
[42:50]NB vs VP 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
python使用循环实现批量创建文件夹示例
2014/03/25 Python
Python字符编码判断方法分析
2016/07/01 Python
书单|人生苦短,你还不用python!
2017/12/29 Python
微信跳一跳小游戏python脚本
2018/01/05 Python
pygame游戏之旅 载入小车图片、更新窗口
2018/11/20 Python
Python中__repr__和__str__区别详解
2019/11/07 Python
Python pandas自定义函数的使用方法示例
2019/11/20 Python
python 解决flask 图片在线浏览或者直接下载的问题
2020/01/09 Python
检测tensorflow是否使用gpu进行计算的方式
2020/02/03 Python
keras使用Sequence类调用大规模数据集进行训练的实现
2020/06/22 Python
东方电视购物:东方CJ
2016/10/12 全球购物
德国高端单身人士交友网站:ElitePartner
2018/12/02 全球购物
英语自我评价范文
2014/01/24 职场文书
mysql 如何获取两个集合的交集/差集/并集
2021/06/08 MySQL
5种 JavaScript 方式实现数组扁平化
2021/10/05 Javascript
Nginx流量拷贝ngx_http_mirror_module模块使用方法详解
2022/04/07 Servers