【发布时间】:2022-12-24 22:46:25
【问题描述】:
我有一个具有以下结构的 JSON 对象:
{
"org_name": "1",
"available": True,
"orgs": [
{
"org_name": "2",
"available": False,
"orgs": []
},
{
"org_name": "3",
"available": False,
"orgs": []
},
{
"org_name": "4",
"available": True,
"orgs": []
},
{
"org_name": "5",
"available": False,
"orgs": [
{
"org_name": "6",
"available": False,
"orgs": []
},
{
"org_name": "7",
"available": False,
"orgs": []
},
{
"org_name": "8",
"available": False,
"orgs": [
{
"org_name": "9",
"available": False,
"orgs": []
},
{
"org_name": "10",
"available": True,
"orgs": []
}
]
}
]
}
]
}
我想解析这个 JSON 数据并得到类似于这样的输出:
{
"org_name": "1",
"orgs": [
{
"org_name": "4",
"orgs": []
},
{
"org_name": "5",
"orgs": [
{
"org_name":"8",
"orgs":[
{
"org_name":"10"
}
]
}
]
}
}
条件是:
- 如果
available是True,输出应该包含它的org_name和orgs; - 如果
available是False那么它应该被删除; - 如果孩子
org有它的availableTrue,那么完整的父组织应该存在。
我很难找到获得输出的逻辑。
任何帮助表示赞赏
【问题讨论】:
-
你能包括你到目前为止尝试过的代码吗?
-
您需要编写递归函数来解析/遍历非空
orgs键 -
为什么
"org_name":"4"是输出中"org_name":"5"的父级JSON而在输入中他们是兄弟姐妹? -
@NimaAfshar 对不起,一个错误..我已经改正了