利用python修改json文件的value方法


Posted in Python onDecember 31, 2018

做工程时遇到需要监听json文件,根据json文件中的key-value值作出相应处理的情形。为此写了修改json文件的python脚本供工程后续调用。

代码如下:

# coding=utf-8 //设置文本格式
import os,sys
import json
def get_new_json(filepath,key,value):
	key_ = key.split(".")
	key_length = len(key_)
	with open(filepath, 'rb') as f:
		json_data = json.load(f)
		i = 0
		a = json_data
		while i < key_length :
			if i+1 == key_length :
				a[key_[i]] = value
				i = i + 1
			else :
				a = a[key_[i]]
				i = i + 1
	f.close()
	return json_data
	
def rewrite_json_file(filepath,json_data):
	with open(filepath, 'w') as f:
		json.dump(json_data,f)
	f.close()
 
if __name__ == '__main__':
	
	key = sys.argv[1]
	value = int(sys.argv[2])
	json_path = sys.argv[3]
		
	m_json_data = get_new_json(json_path,key,value)	
	rewrite_json_file(json_path,m_json_data)

运行范例:

python json_value_modify.py a.b.c 999 /home/cabin/example.json

即把example.json中key值为a.b.c对应的value值修改为999。

以上这篇利用python修改json文件的value方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
利用Python进行异常值分析实例代码
Dec 07 Python
用 Python 连接 MySQL 的几种方式详解
Apr 04 Python
Python爬虫基础之XPath语法与lxml库的用法详解
Sep 13 Python
解决Pycharm运行时找不到文件的问题
Oct 29 Python
Python使用百度翻译开发平台实现英文翻译为中文功能示例
Aug 08 Python
python使用PIL剪切和拼接图片
Mar 23 Python
Pycharm 使用 Pipenv 新建的虚拟环境(图文详解)
Apr 16 Python
windows10 pycharm下安装pyltp库和加载模型实现语义角色标注的示例代码
May 07 Python
python 瀑布线指标编写实例
Jun 03 Python
Python实现给PDF添加水印的方法
Jan 25 Python
selenium3.0+python之环境搭建的方法步骤
Feb 01 Python
Python turtle编写简单的球类小游戏
Mar 31 Python
python 提取tuple类型值中json格式的key值方法
Dec 31 #Python
python 提取key 为中文的json 串方法
Dec 31 #Python
Python判断是否json是否包含一个key的方法
Dec 31 #Python
pyshp创建shp点文件的方法
Dec 31 #Python
解决python ogr shp字段写入中文乱码的问题
Dec 31 #Python
Python图像处理之gif动态图的解析与合成操作详解
Dec 30 #Python
python爬虫获取小区经纬度以及结构化地址
Dec 30 #Python
You might like
检查url链接是否已经有参数的php代码 添加 ? 或 &amp;
2010/02/09 PHP
php数组函数序列之array_unique() - 去除数组中重复的元素值
2011/10/29 PHP
C/S和B/S两种架构区别与优缺点分析
2014/10/23 PHP
PHP操作文件的一些基本函数使用示例
2014/11/18 PHP
laravel入门知识点整理
2020/09/15 PHP
javascript转换日期字符串为Date日期对象的方法
2015/02/13 Javascript
vue日期组件 支持vue1.0和2.0
2017/01/09 Javascript
使用微信内嵌H5网页解决JS倒计时失效问题
2017/01/13 Javascript
文本溢出插件jquery.dotdotdot.js使用方法详解
2017/06/22 jQuery
代码详解Vuejs响应式原理
2017/12/20 Javascript
Rollup处理并打包JS文件项目实例代码
2018/05/31 Javascript
vue-router路由懒加载的实现(解决vue项目首次加载慢)
2018/08/28 Javascript
详解搭建es6+devServer简单开发环境
2018/09/25 Javascript
vue-quill-editor+plupload富文本编辑器实例详解
2018/10/19 Javascript
node静态服务器实现静态读取文件或文件夹
2019/12/03 Javascript
js实现点击选项置顶动画效果
2020/08/25 Javascript
JS highcharts动态柱状图原理及实现
2020/10/16 Javascript
微信小程序轮播图swiper代码详解
2020/12/01 Javascript
vue+element_ui上传文件,并传递额外参数操作
2020/12/05 Vue.js
[03:46]DOTA2英雄基础教程 维萨吉
2013/12/11 DOTA
[01:13]这,就是刀塔
2014/07/16 DOTA
Python爬取读者并制作成PDF
2015/03/10 Python
编写Python脚本来获取Google搜索结果的示例
2015/05/04 Python
简单介绍Python中用于求最小值的min()方法
2015/05/15 Python
python3.5仿微软计算器程序
2020/03/30 Python
Python中optparser库用法实例详解
2018/01/26 Python
python xlsxwriter创建excel图表的方法
2018/06/11 Python
深入浅析Python传值与传址
2018/07/10 Python
Python 给屏幕打印信息加上颜色的实现方法
2019/04/24 Python
python热力图实现简单方法
2021/01/29 Python
css3动画过渡实现鼠标跟随导航效果
2018/02/08 HTML / CSS
文明青少年标兵事迹材料
2014/01/28 职场文书
秋季校运动会广播稿
2014/02/23 职场文书
酒桌上的开场白
2015/06/01 职场文书
口袋妖怪冰系十大最强精灵,几何雪花排第七,第六类似北极熊
2022/03/18 日漫
Vue深入理解插槽slot的使用
2022/08/05 Vue.js