2014-05-22 243 views
0

我有字典對象的列表,如:映射對象列表

>>> j = [{ "field": "dev_name", "value": ['dev_1', 'dev_2', 'dev_3']}, { "field": "dev_type", "value": ['p2p', 'Radwin', 'Talsima']}] 

我想創建的字典項新的列表,從上面,像這樣:

>>> k = [{ "dev_name": ['dev_1', 'dev_2', 'dev_3']}, { "dev_type": ['p2p', 'Radwin', 'Talsima']}] 

其中keys in k是values in j。

有人可以幫助我嗎?
在此先感謝!

+0

爲什麼你想第二個是一個詞典列表,而不是一個大字典? – user2357112

回答

3

你不能在一個列表中進行密鑰查找。相反,我建議只製作一個大字典。然後,你可以做​​和獲取設備名稱的列表,而不必笨拙地通過類型的字典找你想要的與鍵列表迭代的:

k = {d['field']: d['value'] for d in j} 

如果你真的需要類型的字典列表,你可以改爲

k = [{d['field']: d['value']} for d in j]