2016-03-09 27 views
-1

我有以下的JSON字符串:的Python:提取JSON鍵

jsonString = {'result': {'animals': {'Dogs': True, 'Cats': True}} 

所以在Python我知道我可以做:

animals= jsonString['result']['animals'] 

要獲得 '狗' 或 '貓' 的價值。並且:

animals= jsonString['result']['animals']['Dogs'] 

獲得'狗'或'貓'的價值。

然而,當我嘗試print (jsonString['result']['animals'])我得到:

{'Dogs': True, 'Cats': True} 

問題

我如何獲得所有的動物,沒有價值,動態?

謝謝。

+1

你在找什麼結果呢?像'['狗','貓']'? – mgilson

+0

'jsonString ['result'] ['cats']。keys()'? –

+2

你實際上使用了一個'dict',這與json無關,我想你需要'.keys()'來獲得字典的鍵,但是你提供的print語句不是一個有效的python命令 –

回答

1

首先當數據被從JSON加載它創建一個dict對象,所以文檔中描述的所有方法都是可用的,包括keys

print(jsonString['result']['cats'].keys()) 

可以看到的所有可能的方法的列表dir(dict)dir(jsonString)並獲得其中的任何help與內置的功能:

>>> help(dict.keys) 
Help on method_descriptor: 

keys(...) 
    D.keys() -> a set-like object providing a view on D's keys 
+0

謝謝你提供的信息。 – Portu