【发布时间】:2022-01-03 08:12:06
【问题描述】:
有两个带有键和值的 JSON 文件。您需要比较两个文件的“key1”,如果值相等,则对两个文件的“key 2”的值进行比较
file1.json
[
{
"key1": "KARA",
"key2": "10"
}
][
{
"key1": "SARA",
"key2": "23"
}
]
file2.json
{
"code": 200,
"data": [
{
"key1": "CRACK",
"key2": "12"
}
]
}{
"code": 200,
"data": [
{
"key1": "KARA",
"key2": "13"
}
]
}
即如果key 1的值(file1.json)==key1的值(file2.json),就会执行:(file1.json)key2的值-(value2.json) key2 的值 (10 - 13)
输出到终端:-3
如何做到这一点?
我试过了
with open('file1.json') as f, open('file2.json') as f2:
json1 = json.load(f)
json2 = json.load(f2)
if json1[0]['key1'] == json2['data'][0]['key1']:
print(int(json1[0]['key2']) - int(json2['data'][0]['key2'])) # -3
如果文件中有 1 个对象,它可以工作,但不适用于我所询问的场景。
【问题讨论】: