将JSON对象排序到层次结构中
问题描述:
我需要将一个JSON数组整理到一个层次结构中,这是我的JSON文件,它从未排序,但遵循以下结构:
{ "name":"Folder 2", "id":"zRDg", "parent":"OY00", "type":"folder" }, { "name":"Folder 1", "id":"OY00", "type":"folder" }, { "name":"Folder 3", "id":"ZDE1", "type":"folder" }, { "name":"DX00025.jpg", "id":"9Xdd", "parent":"OY00", "type":"jpeg" }
进入此JSON文件,其结构如下:
{ "name":"Folder 1", "id":"OY00", "type":"folder", "children": [{ "name":"Folder 2", "id":"zRDg", "type":"folder" }, { "name":"DX00025.jpg", "id":"9Xdd", "type":"jpeg" }] }, { "name":"Folder 3", "id":"ZDE1", "type":"folder" }
我真的无法弄清楚,因为我是python的新手,我的开始(错误):
for index,item in result: if item['parent']: for item2 in result: if item2['id'] == item['parent']: item['children'] = item2 brake
没关系,但是问题是它不正确 python ,folder1 / folder2 / folder3 /对此不起作用,我需要一个 递归函数
。我还应该包括此结构更改,它可以是带有文件夹的文件夹和带有文件夹/文件夹的文件的任何组合。
我必须打开系统文件并从中读取。该文件通常只能由root用户(超级用户)读取。我有一种向用户询问超级用户密码的方法。我想使用此凭据来打开文件并从中读取文件,而无需让我的整个程序作为超级用户进程运行。有没 ...