我想合并两个JSON文件,同时数据将自己覆盖在主JSON文件中。
我的主要目标是:
{
"data": [
{
"name": "name1",
"gender": "male",
"age": "20",
"subject": "Python",
"pass": "No"
}
]
}
"新数据.json";需要用以下内容覆盖:
{
"data": [
{
"name": "name1",
"subject": "Python",
"pass": "Yes"
}
]
}
结果对象应该是:
{
"data": [
{
"name": "name1",
"gender": "male",
"age": "20",
"subject": "Python",
"pass": "Yes" //updated
}
]
}
通常,您可以对字典使用内置的Pythonupdate
方法,该方法使用新值更新当前字典,同时保留旧数据。
对于您的情况(假设您总是需要更新"data"
密钥内数组中的FIRST元素(:
original_data = {
"data": [
{
"name": "name1",
"gender": "male",
"age": "20",
"subject": "Python",
"pass": "No"
}
]
}
new_data = {
"data": [
{
"name": "name1",
"subject": "Python",
"pass": "Yes"
}
]
}
original_data["data"][0].update(new_data["data"][0]) #this updates the original JSON