def is_json_contained(json1, json2):
if isinstance(json1, dict) and isinstance(json2, dict):
for key, value in json2.items():
if key not in json1 or json1[key] != value:
return False
if isinstance(value, dict):
if not is_json_contained(json1[key], value):
return False
return True
elif isinstance(json1, list) and isinstance(json2, list):
for item in json2:
if item not in json1:
return False
if isinstance(item, dict):
if not any(is_json_contained(subitem, item) for subitem in json1):
return False
return True
else:
return json1 == json2
# 示例用法
json1 = {
"name": "John",
"age": 30,
"address": {
"city": "New York",
"zip": "10001"
},
"tags": ["python", "programming", "data"]
}
json2 = {
"name": "John",
"address": {
"city": "New York",
"zip": "10001"
}
}
result = is_json_contained(json1, json2)
print(result) # 输出 True
判断一个json是否包含另一个json
最新推荐文章于 2024-11-08 15:01:28 发布