利用python修改json文件的value

    做工程时遇到需要监听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。

猜你喜欢

转载自blog.csdn.net/xiekaikaibing/article/details/80082305