2016-07-28 190 views
-2

我需要在結果中達到「B」的值「y」。解析python中的json嵌套字典

{ 
     "Response": { 
        "Result": [2] 
          0: { 
           "A": "x" 
           "B": "y" 
           "C": "z" 
           } 
          1: { 
           "A": "d" 
           "B": "e" 
           "C": "f" 
           "D": "g" 
           } 

        } 
} 

我嘗試[ '響應'] [ '結果'] [0] [ 'B']產生給定的錯誤

IndexError: list index out of range

任何幫助將不勝感激。謝謝。

+2

這不是有效的JSON。它也不是一個有效的字典。 「結果」附近的東西:[2]'不對。它看起來像是一個缺少的逗號,但這不符合你的錯誤信息。 –

+0

請包括實際的JSON - 這裏沒有任何*逗號,'0'和'1'被格式化爲映射鍵,但沒有包含它們的映射。 – MisterMiyagi

回答

2

關鍵0不是"Result"下你應該使用['Response'][0]['B']

+0

['Response'] [0] ['B']給出了一個關鍵錯誤 –

+0

我會聽你的問題的意見,並提供一個格式正確的JSON。對我來說,似乎很奇怪,最初你使用'['Response'] ['Result'] [0]'得到了一個'IndexError',因爲這意味着你有一個空的列表。但是,既然你現在得到一個'KeyError',我會建議試着看看你從'['Response'] [0]得到了什麼輸出' – Sumido