我有一本詞典 - 其中的值是詞典本身。
如何以最有效的方式從子字典中提取唯一的值集合?詞典的處理詞典
{ 'A':{'A1':'A1V','B2':'A2V'..},
'B':{'B1':'B1V','B2':'B2V'...},
...}
預期輸出:
['A1V','A2V','B1V','B2V'...]
我有一本詞典 - 其中的值是詞典本身。
如何以最有效的方式從子字典中提取唯一的值集合?詞典的處理詞典
{ 'A':{'A1':'A1V','B2':'A2V'..},
'B':{'B1':'B1V','B2':'B2V'...},
...}
預期輸出:
['A1V','A2V','B1V','B2V'...]
在單行:
>>> [val for dct in x.values() for val in dct.values()]
['A1V', 'A2V', 'B2V', 'B1V']
假設你命名你的字典x
的字典。
你提到獨一無二的,在這種情況下,由一組-理解取代列表理解:
>>> {val for dct in x.values() for val in dct.values()} # curly braces!
{'A1V', 'A2V', 'B1V', 'B2V'}
uniques = set()
for ukey, uvalue in outerdic.items():
for lkey, lvalue in uvalue.items():
uniques.add(lvalue)
print uniques
使用一組應該工作。新的到stackoverflow,試圖找出語法高亮如何工作。
這假定字典被稱爲「外部」。
dictionary = { 'A':{'A1':'A1V','B2':'A2V'},'B':{'B1':'B1V','B2':'B2V'}}
for key in dictionary.keys() :
dict1 = dictionary[key]
for key1 in dict1.keys():
print(dict1[key1])
試圖保持儘可能簡單。