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脚本生成随机IP的简单方法
Jul 30 Python
Python常见格式化字符串方法小结【百分号与format方法】
Sep 18 Python
Python PyQt5标准对话框用法示例
Aug 23 Python
python实现二叉树的遍历
Dec 11 Python
在django中图片上传的格式校验及大小方法
Jul 28 Python
python实现XML解析的方法解析
Nov 16 Python
python FTP批量下载/删除/上传实例
Dec 22 Python
使用TensorFlow对图像进行随机旋转的实现示例
Jan 20 Python
PyQt5 文本输入框自动补全QLineEdit的实现示例
May 13 Python
Opencv+Python识别PCB板图片的步骤
Jan 07 Python
python文件目录操作之os模块
May 08 Python
Pytorch 如何实现常用正则化
May 27 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
德生PL330测评
2021/03/02 无线电
php实例分享之二维数组排序
2014/05/15 PHP
Symfony查询方法实例小结
2017/06/28 PHP
php删除一个路径下的所有文件夹和文件的方法
2018/02/07 PHP
父窗口获取弹出子窗口文本框的值
2006/06/27 Javascript
使用js 设置url参数
2013/07/08 Javascript
用js来刷新当前页面保留参数的具体实现
2013/12/23 Javascript
JavaScript限定图片显示大小的方法
2015/03/11 Javascript
jQuery防止重复绑定事件的解决方法
2016/05/14 Javascript
浅谈javascript控制HTML5的全屏操控,浏览器兼容的问题
2016/10/10 Javascript
JS实现的验证身份证及获取地区功能示例
2017/01/16 Javascript
vue之浏览器存储方法封装实例
2018/03/15 Javascript
Javascript Promise用法详解
2018/05/10 Javascript
vue首次赋值不触发watch的解决方法
2018/09/11 Javascript
Vue指令之 v-cloak、v-text、v-html实例详解
2019/08/08 Javascript
[01:05:41]EG vs Optic Supermajor 败者组 BO3 第二场 6.6
2018/06/07 DOTA
Python设计模式之观察者模式实例
2014/04/26 Python
玩转python爬虫之URLError异常处理
2016/02/17 Python
python进阶_浅谈面向对象进阶
2017/08/17 Python
python实现超市扫码仪计费
2018/05/30 Python
Python用5行代码写一个自定义简单二维码
2018/10/21 Python
python判断字符串或者集合是否为空的实例
2019/01/23 Python
用python3 返回鼠标位置的实现方法(带界面)
2019/07/05 Python
树莓派安装OpenCV3完整过程的实现
2019/10/10 Python
Python实现剪刀石头布小游戏(与电脑对战)
2019/12/31 Python
Python语法之精妙的十个知识点(装B语法)
2020/01/18 Python
使用Python爬虫库BeautifulSoup遍历文档树并对标签进行操作详解
2020/01/25 Python
新版Pycharm中Matplotlib不会弹出独立的显示窗口的问题
2020/06/02 Python
python实现一次性封装多条sql语句(begin end)
2020/06/06 Python
Intimissimi德国网上商店:意大利知名内衣品牌
2018/04/03 全球购物
医药工作岗位求职信分享
2013/12/31 职场文书
材料工程专业毕业生求职信
2014/03/04 职场文书
办公室主任竞聘演讲稿
2014/05/15 职场文书
欢迎横幅标语
2014/06/17 职场文书
研究生导师评语
2014/12/31 职场文书
个人求职自荐信范文
2015/03/06 职场文书