1. 程式人生 > 實用技巧 >Python--json_tools用法

Python--json_tools用法

安裝

pip install json_tools

使用

輸出導讀:

上面的輸出顯示的是b相對於a的變化:

1) b和a都有鍵’rd’,但是b相對a鍵’rd’的值發生了變化,由原來的yanan變為Yanan,所以比較結果的list有{'replace': '/rd', 'value': 'Yanan', 'prev': 'yanan'}

其中replace標識發生變化的鍵,value標識變化後即當前該鍵的值,prev表示該鍵此前的值。

2) b相對於a沒有city鍵,所以結果集中有{'remove': '/city', 'prev': 'zibo'}

3) b中的town相對於a,是新增的鍵,所以結果集中有{'add': '/town', 'value': 'taian'}

多層巢狀的對比

import json_tools

def json_diff(json_1, json_2):
    result = json_tools.diff(json_1, json_2)
    print(result)

a = {"rd": "yanan", "pro": {"sh": "shandong", "city": ["zibo", "weifang"]}}
b = {"rd": "Yanan", "pro": {"sh": "shandong", "town": ["taian", "weifang"]}}

json_diff(a, b)

結果:

[{'
replace': '/rd', 'value': 'Yanan', 'prev': 'yanan'},
{'remove': '/pro/city', 'prev': ['zibo', 'weifang']},
{'add': '/pro/town', 'value': ['taian', 'weifang']}]