参考文章:https://blog.csdn.net/qq_38343151/article/details/104865640https://blog.csdn.net/qq_38343151/article/details/104865640
目录
一、简单json文件的修改
?二、修改json中数组对象中的值
?笔记
一、简单json文件的修改
编辑前的文件,code值为200
编辑后的文件,code值为404
代码:
import json
# 获取json里面数据
def get_json_data():
with open('D:\z\mytest\htest.json', 'rb') as f: # 使用只读模型,并定义名称为f
params = json.load(f) # 加载json文件
params["code"] = "404" # code字段对应的值修改为404
print("params", params) # 打印
f.close() # 关闭json读模式
return params # 返回修改后的内容
# 写入json文件
def write_json_data(params):
# 使用写模式,名称定义为r
#其中路径如果和读json方法中的名称不一致,会重新创建一个名称为该方法中写的文件名
with open('D:\z\mytest\htest.json', 'w') as r:
# 将dict写入名称为r的文件中
json.dump(params, r)
# 关闭json写模式
r.close()
# 调用两个函数,更新内容
the_revised_dict = get_json_data()
write_json_data(the_revised_dict)
?二、修改json中数组对象中的值
修改前,imp字段中的deeplink的值为before
修改后,imp字段中的deeplink的值为end
源代码:
import json
# 获取json里面数据
def get_json_data():
with open('D:\z\mytest\kkkl.json', 'rb') as f: # 使用只读模型,并定义名称为f
params = json.load(f) # 加载json文件中的内容给params
# params["code"] = "505"
params["imp"][0]["deeplink"] = "end" # imp字段对应的deeplink的值修改为end
print("修改后的值", params["imp"][0]["deeplink"]) # 打印
f.close() # 关闭json读模式
return params # 返回修改后的内容
# 写入json文件# 使用写模式,名称定义为r
def write_json_data(params):
with open('D:\z\mytest\kkkl.json', 'w') as r:
# 将params写入名称为r的文件中
json.dump(params, r)
# 关闭json写模式
r.close()
# 调用两个函数,更新内容
the_revised_dict = get_json_data()
write_json_data(the_revised_dict)
?笔记
打印? params["imp"];params["imp"][0];params["imp"][0]["deeplink"]时控制台输出的值的区别
?
?
|