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

yipeiwu_com5年前Python基础

做工程时遇到需要监听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写王者荣耀刷金币脚本

王者荣耀很多朋友都想买脚本和挂之类的,想更加容易的获得金币等可以在游戏里买英雄等,今天我们发挥程序员的优势教给大家用Python语言自己写一个可以刷金币的脚本,以下是全部内容。 王者荣耀...

详解使用PyInstaller将Pygame库编写的小游戏程序打包为exe文件

详解使用PyInstaller将Pygame库编写的小游戏程序打包为exe文件

一、安装Pyinstaller 环境:python3.6、window10 注意事项: python64位版本打包的exe,只能在64位操作系统使用 打包文件夹和文件的名称不能用中文 p...

python字符串编码识别模块chardet简单应用

python的字符串编码识别模块(第三方库): 官方地址: http://pypi.python.org/pypi/chardet import chardet import...

python检查指定文件是否存在的方法

本文实例讲述了python检查指定文件是否存在的方法。分享给大家供大家参考。具体如下: import os def file_exists(file_name): if os....

详解Python中的序列化与反序列化的使用

学习过marshal模块用于序列化和反序列化,但marshal的功能比较薄弱,只支持部分内置数据类型的序列化/反序列化,对于用户自定义的类型就无能为力,同时marshal不支持自引用(递...