gpt4 book ai didi

python - 用 Python 中另一个 JSON 文件中的相应值替换 JSON 值

转载 作者:行者123 更新时间:2023-12-05 03:48:52 27 4
gpt4 key购买 nike

我正在尝试用另一个 JSON 文件中的值替换一个 JSON 值。例如,我有这个 JSON 文件:

{'data': [{'street': '1'}, {'street': '2'}, {'street': '3'}]}

现在我想用这个 JSON 文件的相应值替换“街道”值:

{'data': [{'1': '示例街道 1'}, {'2': '示例街道 2'}, {'3': '示例街道 3'}]}

所以结果应该是:

{'data': [{'street': '示例街道 1'}, {'street': '示例街道 2'}, {'street': '示例街道 3'}]}

我正在尝试学习 python,所以我不知道如何解决这个问题,而且我在 Internet 上找不到解决方案。如果有人知道如何解决这个问题,请帮助我。

最佳答案

首先,您需要加载第一个 JSON 文件的内容,然后加载第二个 JSON 文件的内容,找到相应的值(在本例中为 'street' 键),然后转储将新的 JSON 放入文件中。

在我的例子中,first.json 包含 {"data": [{"street": "1"}, {"street": "2"}, {"street ": "3"}]}second.json 包含 {"data": [{"1": "Example Street 1"}, {"2": “示例街道 2”},{“3”:“示例街道 3”}]}

我使用以下内容创建了一个具有指定值的新 JSON 文件:

import json

with open('first.json') as first_file:
first_json = json.load(first_file)

with open('second.json') as second_file:
second_json = json.load(second_file)

new_data = []

for i in range(len(first_json['data'])):
for j in range(len(second_json['data'])):
key_one, value_one = list(first_json['data'][i].items())[0]
key_two, value_two = list(second_json['data'][j].items())[0]

if value_one == key_two:
new_data.append({key_one: value_two})

with open('new_file.json', 'w+') as new_file:
new_data = {'data': new_data}
json.dump(new_data, new_file)

新的 JSON 文件应该包含值

{"data": [{"street": "Example Street 1"}, {"street": "Example Street 2"}, {"street": "Example Street 3"}]}

关于python - 用 Python 中另一个 JSON 文件中的相应值替换 JSON 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64201277/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com