我有兩個json
文件。其中之一是一個字典,是另一個的子集。無法更新json文件
json_file_1.json
包含{'foo': 1, 'bar': 2, 'baz': 3}
json_file_2.json
包含{'foo': 100, 'bar': 200}
。
我想創建一個最終json
文件有以下幾點:{'foo': 100, 'bar': 200, 'baz': 3}
這裏是我試過到目前爲止:
with open('json_file_1.json') as f1:
original_info = json.load(f1)
f1.close()
with open('json_file_2.json') as f2:
updated_info = json.load(f2)
f2.close()
print original_info # prints the correct dictionary
print updated_info # prints the correct dictionary
final_info = original_info.update(updated_info)
print final_info # prints None
with open('json_file_final.json', 'w+') as f_final:
json.dump(final_info, f_final)
然而,當我打開最後json
文件,它僅包含「空值」。當我嘗試調試時,我打印出original_info
和updated_info
,他們都很好。我可以打電話original_info.update(updated_info)
,這將產生一個正確更新的字典。但是,當它們全部組合在一起時,它僅僅因爲某種原因而不工作?
有什麼想法?
非常感謝!
你不需要如使用'with' –
@ cricket_007冷靜,感謝關閉文件! –