2016-10-18 103 views
-3

我有一個字典,它在Python程序中具有以下結構: {'John':{'age': '12', 'height':'152', 'weight':'45}},這是從函數返回的結果。從字典中提取字典

我的問題是我怎麼可能提取子字典?這樣我就可以用這種形式的數據只有{'age': '12', 'height':'152', 'weight':'45}

*我可以想出一個使用for循環來查看字典的解決方案,因爲在這個字典中只有一個項目,我可以將它存儲到一個新變量中,但是我想要學習一個替代方案

非常感謝

+2

你試過'd [「John」]嗎?或者如果只有一個值,並且您不知道該密鑰是否從.values中提取出來。 'next(iter(d.values()))'或'd [next(iter(d))]' –

+0

閱讀任何Python教程的詞典部分? –

回答

2

從字典中獲得一個值,使用字典[關鍵]:

>>> d = {'John':{'age': '12', 'height':'152', 'weight':'45'}} 
>>> d['John'] 
{'age': '12', 'height': '152', 'weight': '45'} 
>>> 
-1
>>> d = {'John':{'age': '12', 'height':'152', 'weight':'45'}, 'Kim':{'age': '13', 'height': '113', 'weight': '30'}} 
>>> for key in d: 
...  print(key, d[key]) 
... 
John {'height': '152', 'weight': '45', 'age': '12'} 
Kim {'height': '113', 'weight': '30', 'age': '13'} 

只是訪問子詞典0。如果你有多個鍵,像上面的循環就可以讓你瀏覽所有的鍵。

+0

我認爲這是解決方案,謝謝! – Victor

+0

如果您認爲這是解決方案,請投票並將此答案標記爲已接受:) – blacksite