Python的json格式读取及写入操作是什么
Admin 2022-08-12 群英技术资讯 1539 次浏览
这篇文章给大家介绍了“Python的json格式读取及写入操作是什么”的相关知识,讲解详细,步骤过程清晰,有一定的借鉴学习价值,因此分享给大家做个参考,感兴趣的朋友接下来一起跟随小编看看吧。今天我们先讲一下编写python脚本处理json的核心功能,有些散乱,后期在进行整体脚本的编写。
json文件读取后的操作和字典的操作一样,可以将dict中相关的内置方法都继承过来,但是json文件中会有list形式和dict形式的混合存在。
此时要注意区分。
json文件数据结构走的是dict的结构,键值对
(1)修改值非常方便,
json["id"]=3001
(2)修改键就麻烦一点。
dict字典没有直接修改键的概念与方法,
修改键:先把原有的键值对删除,在添加新的键值对,注意获取旧键值对的value,传递给新的键值对的value
获取value:value=json['request']["session_id"]
删除键值对:json['request'].pop("session_id")
新增键值对:json['request'].setdefault("operation_id",value)
def jsonfilePath_read(inputfilePath, outfilepath):
rightCount = 0
errorCount = 0
for file in os.listdir(inputfilePath):
try:
print(file)
read_jsonfile_change2(str(inputfilePath + '/' + file), outfilepath + '/' + file)
print(file + '修改成功')
rightCount += 1
except:
print(file + '文件有误修改失败')
errorCount += 1
print('文件修改完成 ', rightCount, '个文件成功', errorCount, '个文件有误')
解说核心代码:
核心代码:
for file in os.listdir(inputfilePath):
#file就是当前路径中的所有文件名,使用的时候别忘了路径+'/' + file
try:
....inputfilePath + '/' + file
except:
print().....
读一遍写一遍可以实现json的格式化,解决json在txt文件中是单行显示的问题。
# 读取文件
with open('file/test.json', 'r', encoding='utf8') as f:
json_data = json.load(f)
jsondict = json_data
# 写入新文件
with open('outfile/test.json', 'w', encoding='utf8') as r:
json.dump(jsondict, r, ensure_ascii=False, indent=4)
print('新文件生成完成')
核心点说明:
读取、写入encoding='utf8' 防止编码问题 indent=4,好像是空4个格,美观输出
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
本文主要介绍了Python中可以用三种方法判断文件是否存在,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
OpenCV中提供了两种技术用于特征匹配,分别为Brute-Force匹配器和基于FLANN的匹配器。本文将为大家详细介绍一下这两种匹配方式,需要的可以参考一下
通过%格式表达式可以构建对象的格式化字符串输出。%表达式,由%分隔,左侧为格式字符串,由固定字符串和%开头的格式化样式组成,右侧为实际的对象,或对象元组。
这篇文章会基于Python对微信好友进行数据分析,这里选择的维度主要有:性别、头像、签名、位置,主要采用图表和词云两种形式来呈现结果,其中,对文本类信息会采用词频分析和情感分析两种方法,感兴趣的小伙伴可以了解一下
今天教各位小伙伴怎么用python实现字符串转日期,文中有非常详细的代码示例,对正在学习python的小伙伴很有帮助,需要的朋友可以参考下
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008