diff dict list set数据的工具

deep-diff的Python项目详细描述


用于diff dict list的工具设置数据输出,如npm包deep_diff

用法

pip install deep_diff
from deep_diff import diff
diff({'a':1},{'b':1})
[{kind:'E',path:['name'],lhs:'myobject',rhs:'updatedobject'},{kind:'E',path:['details','with',2],lhs:'elements',rhs:'more'},{kind:'A',path:['details','with'],index:3,item:{kind:'N',rhs:'elements'}},{kind:'A',path:['details','with'],index:4,item:{kind:'N',rhs:{than:'before'}}}]

差异

差异报告为一个或多个更改记录。更改记录具有以下结构:

  • kind-表示更改的类型;将是以下类型之一:
    • N-表示新添加的属性/元素
    • D-表示属性/元素已被删除
    • E-表示属性/元素已被编辑
    • A-表示数组中发生了更改
  • path-属性路径(从左侧根开始)
  • lhs-比较左侧的值(如果kind='n',则未定义)
  • rhs-比较右侧的值(如果kind='d',则未定义)
  • index-当kind='a'时,表示发生更改的数组索引
  • item-当kind='a'时,包含一个嵌套的更改记录,指示在数组索引处发生的更改

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
JavaSpringMVC控制器测试打印结果JSON字符串   若catch语句返回,那个么为什么它最终会阻塞呢?   java Grails中servletContext在哪里可用?   java Jhipster:如何为现有项目启用多种语言   java异常评估SpringEL表达式:“#fields.hasErrors('something')”   java如何验证SeleniumWebDriver中的文本颜色?   java在绘图时使用JPanel坐标   java如何初始化spring启动到project?   java如何通过JDBC的PreparedStatement将UUID数组插入HyperSQL数据库   java修改JVM以跨线程序列化文件访问   Javascript到Java正则表达式   使用Java运行时调用aspell程序时出现字符集问题。getRuntime()。执行官   执行RDP时的java Sukuli按钮识别   java如何使用okhttp更改connect请求的标头   java无法创建Maven Eclipse项目