1、json数据转换成字典

dict1 = json.load(load_f1)
dict2 = json.load(load_f2)

2、将两个字典按key排好序,然后使用zip()函数将两个字典对应的key打包成元组。比较对应的key的value是否相等。

for src_list, dst_list in zip(sorted(dict1), sorted(dict2)):
if str(dict1[src_list]) != str(dict2[dst_list]):
print(src_list,dict1[src_list],dst_list,dict2[dst_list])

zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组。

如果数据格式为:

dict1 = {"id": "100", "name": "苹果", "info": {"uid":"2020","phoneName":["一代","苹果12"]}}
dict2 = {"id": "100", "name": "华为", "info": {"uid":"2020","phoneName":["一代","Mate40"]}}

使用递归函数进行处理

def cmp(src_data, dst_data):
if isinstance(src_data, dict):
"""若为dict格式"""
for key in dst_data:
if key not in src_data:
print("src不存在这个key")
for key in src_data:
if key in dst_data:
"""递归"""
cmp(src_data[key], dst_data[key])
else:
print("dst不存在这个key")
elif isinstance(src_data, list):
"""若为list格式"""
if len(src_data) != len(dst_data):
print("list len: '{}' != '{}'".format(len(src_data), len(dst_data)))
for src_list, dst_list in zip(sorted(src_data), sorted(dst_data)):
"""递归"""
cmp(src_list, dst_list)
else:
if str(src_data) != str(dst_data):
print(src_data) dict1 = {"id": "100", "name": "苹果", "info": {"uid": "2020", "phoneName": ["一代", "苹果12"]}}
dict2 = {"id": "100", "name": "华为", "info": {"uid": "2020", "phoneName": ["一代", "Mate40"]}}
cmp(dict1, dict2)

Python比较2个json数据是否相等的更多相关文章

  1. python中级---->pymongo存储json数据

    这里面我们介绍一下python中操作mangodb的第三方库pymongo的使用,以及简单的使用requests库作爬虫.人情冷暖正如花开花谢,不如将这种现象,想成一种必然的季节. pymongo的安 ...

  2. Python语言中对于json数据的编解码——Usage of json a Python standard library

    一.概述 1.1 关于JSON数据格式 JSON (JavaScript Object Notation), specified by RFC 7159 (which obsoletes RFC 46 ...

  3. python#读csv,excel,json数据

    #读csv,excel,json数据 with open('E:\\test\\xdd.csv','r') as f: for line in f.readlines(): print(line) i ...

  4. python爬虫中涉及json数据的处理

    在执行爬虫项目的过程中,有时返回的不是一个html页面而是json格式数据,此时对数据的解析非常重要. 1.Json格式数据的爬取   采用request对以上的url进行爬取: import  re ...

  5. python 读取单所有json数据写入mongodb(单个)

    <--------------主函数-------------------> from pymongo import MongoClientfrom bson.objectid impor ...

  6. 利用Python进行数据分析(2) 尝试处理一份JSON数据并生成条形图

    一.JSON 数据准备 首先准备一份 JSON 数据,这份数据共有 3560 条内容,每条内容结构如下: 本示例主要是以 tz(timezone 时区) 这一字段的值,分析这份数据里时区的分布情况. ...

  7. 使用Python解析JSON数据的基本方法

    这篇文章主要介绍了使用Python解析JSON数据的基本方法,是Python入门学习中的基础知识,需要的朋友可以参考下:     ----------------------------------- ...

  8. 飘逸的python - 命令行漂亮的显示json数据

    之前做的一个脚本把信息用json格式存到文本中.这样的好处是简便,易编辑,并且拥有强大的表达能力. 不过从文本cat出来的是一堆很难看的字符串,没换行和缩进.这时候就在想,如果有个类似于IDE的格式化 ...

  9. 使用python将mysql数据库的数据转换为json数据

    由于产品运营部需要采用第三方个推平台,来推送消息.如果手动一个个键入字段和字段值,容易出错,且非常繁琐,需要将mysql的数据转换为json数据,直接复制即可. 本文将涉及到如何使用Python访问M ...

  10. 使用Python解析豆瓣上Json格式数据

    现在的API接口多为xml或json,json解析更简洁相对xml来说 以豆瓣的API接口为例,解析返回的json数据: https://api.douban.com/v2/book/1220562 ...

随机推荐

  1. 痞子衡嵌入式:探析i.MXRT1050在GPIO上增加RC延时电路后导致边沿中断误触发问题(上篇)

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是i.MXRT1050在GPIO上增加RC延时电路后导致边沿中断误触发问题探析. 前段时间有一个 RT1052 客户反馈了一个有趣的问题, ...

  2. mariadbl数据库环境迁移

    前言: 数据库的主要作用就是对数据进行保存和维护,所以备份数据是数据库管理中最常用的操作.为了防止数据库意外崩溃或硬件损伤而导致的数据丢失,数据库系统提供了备份和恢复策略.保证数据安全的最重要的一个措 ...

  3. Nuitka打包

    Nuitka打包PySide6/PyQt 本文仅供本人知识总结使用,所以内容会比较浅显,不喜勿喷. 文章目录 Nuitka打包PySide6/PyQt 一.需要C++编译器 二.安装Nuitka 三. ...

  4. 预设型 DP

    预设型 DP <美好的一天>--青春学概论 한 잔 술에 취해 잠긴 목엔 沉醉于一杯酒 갈라지는 목소린 다시 带着沙哑的嗓音 두 잔 자기 전엔 기분 좋음 入睡前饮下第二杯让心情愉悦 ...

  5. 防止npm被墙的小技巧

    方法一: 全局安装中国服务器的包管理工具 npm i cnpm --global 下载包的时候用cnpm取代npm 方法二: 在小黑板输入:npm config set registry https: ...

  6. 【Python + Appium】之元素定位总结(更新)

    一.ID定位 uiautomatorviewer里面的:resource-id driver.find_element(By.ID,"com.csks.businesses:id/tv_nu ...

  7. mysql 存储结构介绍及执行过程分析

    MySQL体系结构介绍 1 mysql 的体系结构 MySQL整体的逻辑结构可以分为4层,客户层.服务层.存储引擎层.数据层 客户层 客户层:进行相关的连接处理.权限控制.安全处理等操作 服务层 服务 ...

  8. 5.7前端跨域CSRF和SSRF

    一.CSRF(跨站请求伪造) 1.get类型(pikaqu靶场环境) 前提:抓包获取请求地址,构造伪造请求站点,并保持用户登录状态点击伪造站点 此时在其他主机,构造网站信息index.html文件,并 ...

  9. sql 查询表数据

    SELECT s.Name AS SchemaName, t.Name AS TableName, p.rows AS RowCounts--, --CAST(ROUND((SUM(a.used_pa ...

  10. SQL Server – Soft Delete

    前言 Soft Delete 中文叫 "逻辑删", "软删除". 对比的自然就是 Hard Delete. 这篇想聊一聊它的好与坏, 什么时候可以考虑用它. H ...