利用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实现udp数据报传输的方法
Sep 26 Python
Python原始字符串(raw strings)用法实例
Oct 13 Python
Python中不同进制互相转换(二进制、八进制、十进制和十六进制)
Apr 05 Python
在Python中使用__slots__方法的详细教程
Apr 28 Python
详解Python的循环结构知识点
May 20 Python
解决Python内层for循环如何break出外层的循环的问题
Jun 24 Python
pygame实现烟雨蒙蒙下彩虹雨
Nov 11 Python
如何用OpenCV -python3实现视频物体追踪
Dec 04 Python
PyQt5-QDateEdit的简单使用操作
Jul 12 Python
浅谈如何使用python抓取网页中的动态数据实现
Aug 17 Python
Python使用pycharm导入pymysql教程
Sep 16 Python
python本地文件服务器实例教程
May 02 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
php限制文件下载速度的代码
2015/10/20 PHP
兼容ie和firefox js关闭代码
2008/12/11 Javascript
Jquery 1.42 checkbox 全选和反选代码
2010/03/27 Javascript
jquery 查找iframe父级页面元素的实现代码
2011/08/28 Javascript
深入理解JavaScript系列(9) 根本没有“JSON对象”这回事!
2012/01/15 Javascript
基于jQuery实现模拟页面加载进度条
2013/04/01 Javascript
jQuery对象数据缓存Cache原理及jQuery.data方法区别介绍
2013/04/07 Javascript
JavaScript实现生成GUID(全局统一标识符)
2014/09/05 Javascript
用js读、写、删除Cookie代码续篇
2014/12/03 Javascript
JavaScript动态设置div的样式的方法
2015/12/26 Javascript
js获取Html元素的实际宽度高度的方法
2016/05/19 Javascript
浅析Nodejs npm常用命令
2016/06/14 NodeJs
jQuery实现右下角可缩放大小的层完整实例
2016/06/20 Javascript
js判断出两个字符串最大子串的函数实现方法
2016/11/01 Javascript
解析利用javascript如何判断一个数为素数
2016/12/08 Javascript
jQuery模拟窗口抖动效果
2017/03/15 Javascript
详解vue-cli构建项目反向代理配置
2017/09/07 Javascript
Vue 中的受控与非受控组件的实现
2018/12/17 Javascript
在Node.js下运用MQTT协议实现即时通讯及离线推送的方法
2019/01/24 Javascript
javascript实现摄像头拍照预览
2019/09/30 Javascript
jQuery加PHP实现图片上传并提交的示例代码
2020/07/16 jQuery
vue 基于abstract 路由模式 实现页面内嵌的示例代码
2020/12/14 Vue.js
python进程管理工具supervisor使用实例
2014/09/17 Python
更改Python命令行交互提示符的方法
2015/01/14 Python
浅谈pyhton学习中出现的各种问题(新手必看)
2017/05/17 Python
使用Python的turtle模块画图的方法
2017/11/15 Python
python整小时 整天时间戳获取算法示例
2019/02/20 Python
Python向excel中写入数据的方法
2019/05/05 Python
python numpy中cumsum的用法详解
2019/10/17 Python
HTML5 canvas基本绘图之图形变换
2016/06/27 HTML / CSS
Trina Turk官网:美国时装和泳装品牌
2018/06/10 全球购物
Chi Chi London官网:购买连衣裙和礼服
2020/10/25 全球购物
讲文明树新风公益广告宣传方案
2014/02/25 职场文书
美丽乡村建设实施方案
2014/03/23 职场文书
2016中考冲刺决心书
2015/09/22 职场文书
Python机器学习之底层实现KNN
2021/06/20 Python