我想採用以下JSON並將其轉換爲多個字典,這樣我就可以訪問頂級節點下的每個設置,僅針對該環境。這是一個配置文件,可以維護不同環境的設置,我希望能夠獲取頂級節點/環境,然後使用所有僅用於該環境的底層節點/設置。如何使用Python將JSON轉換爲多個字典
我的例子JSON
{ 「默認」:
{
"build": { "projectKey": "TEST", "buildKey": "ME" }, "headers": { "json": "application/json", "xml": "application/xml" }
},
「開發」:{
"build": { "projectKey": "TEST", "buildKey": "YOU" }, "headers": { "json": "application/json", "xml": "application/xml" }
},
「QA」:{
"build": { "projectKey": "TEST", "buildKey": "THEM" }, "headers": { "json": "application/json", "xml": "application/xml" }
}}
我試圖拉出頂級鍵這樣做,但不能看到如何將它們分開成使用Python的多個字典,以便我可以收集每個環境的設置並使用它們而不會重複。通過檢查節點的len來檢查底層節點,看看下面是否有更多的節點,但是從頂層開始,將每個節點拆分爲它自己的字典,我無法解決。
或者還有一種更好的方法可以做到這一點,而不是我不知道的。下面的長度可能會有所不同,但如果我可以分解這些,這應該是無關緊要的。
「壓扁成一個字典」的代碼 - 你將不得不解釋你實際上是什麼意思。 – user2357112
@ user2357112這是否使它更清晰?展平是我爲此思考的一個術語,而不是JSON節點。不應該在這裏使用它 – MichaelF
不,它還是很不清楚。你認爲「JSON節點」是什麼,爲什麼你認爲你還沒有字典?這聽起來像你已經有一個字典。那麼,或者你有一個字符串,在這種情況下,你會使用'json.loads(your_string)'來解析它並得到一個字典,但是這聽起來像你已經有一個字典。 – user2357112