我擁有的 JSON 檔案:
[{
"key_a": "value",
"key_b": [{
"key_a": "c",
"key_b": null
},
{
"key_a": "b",
"key_b": null
}]
}]
我想要的格式:
[{
"key_a": "value",
"key_b": [{
"key_a": "b",
"key_b": null
},
{
"key_a": "c",
"key_b": null
}]
}]
如何根據鍵的值(例如根據“key_a”)對子元素進行排序,然后將其保存到加載資料的源 JSON 檔案中?
我的想法是這樣的:
def read_json_file():
with open(filename) as file:
var = json.load(file)
file.close()
def sort_json_var():
...
def write_json_file():
with open (filename, 'w') as file:
json.dump(data, file, indent=4)
file.close()
uj5u.com熱心網友回復:
Python 的內置函式sorted可以做到這一點。如果var是您加載的 json 檔案(您可能希望將其傳遞給sort_json_var),那么
sorted(var[0]["key_b"], key=lambda x:x["key_a"])
將回傳您想要的內部部分,只要其中的每個元素都有key_a. 然后剩下的就是將該結果分配回var[0]["key_b"].
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/435548.html
