文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

python中json格式处理和字典的关系

2024-04-02 19:55

关注

前言:作为测试工程师都知道,json格式的文件使我们常用的一种数据存放形式,那么对于python文件的处理,python语言有着得天独厚的条件,json的本质是键值对形式存储的,这就非常像python语言中的字典,所以有很多字典形式的函数与方法,是直接可以使用的。

今天我们先讲一下编写python脚本处理json的核心功能,有些散乱,后期在进行整体脚本的编写。

1、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)

2、python递归路径文件夹中的所有文件

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().....

3、json文件的读取与写入新文件

读一遍写一遍可以实现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个格,美观输出

到此这篇关于python中json格式处理和字典的关系的文章就介绍到这了,更多相关python json字典关系内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯