zoukankan      html  css  js  c++  java
  • json对象判断相等

    支持dict、list、普通数据类型对象比较

    def compare(src, des):
    if type(src) != type(des):
    return False
    if isinstance(src, (str, int, float)):
    if src == des:
    return True
    else:
    return False
    elif isinstance(src, dict):
    if len(src) != len(des):
    return False
    keys = set(list(src.keys()) + list(des.keys()))
    for key in keys:
    if key not in src or key not in des:
    return False
    result = compare(src[key], des[key])
    if not result:
    return result
    return True
    elif isinstance(src, list):
    if len(src) != len(des):
    return False
    length = len(src)
    for i in range(length):
    for lj in des:
    result = compare(src[i], lj)
    if result:
    des.remove(lj) # des列表中的元素匹配上后,des.remove掉元素, len(des)会-1;
    break
    length -= 1
    if length != len(des):
    return False

    return True
  • 相关阅读:
    ==和===
    Println、Printf、Sprintf区别
    BurpSuite代理https
    scp
    Tomcat Ajp(CVE-2020-1938)
    Chrome-HackBar破解
    crontab
    Sql注入之postgresql
    Sql注入之oracle
    LeetCode简单题(一)
  • 原文地址:https://www.cnblogs.com/peak911/p/13067188.html
Copyright © 2011-2022 走看看