2011-03-14 36 views
0

我有一本字典的格式如下的Python:讓複雜的字典,最好的辦法值

{ '數組':[{u'unsigned':15.0}],[{u'octet-字符串':12.0}],[{u'octet-string':12.0}],[{u'octet-string':12.0}],[{u'octet-string':45.0}],[{ octet-string':78.0}],[{u'octet-string':89.0}],[{u'octet-string':65.0}],[{u'octet-string':352.0}],[{ u'octet-string':45.0}],[{u'octet-string':12.0}],[{u'octet-string':45.0}],[{u'octet-string':78.0}], [{u'octet-string':98.0}],[{u'octet-string':352.0}],[{u'octet-string':56.0}],[{u'octet-string':89.0} ],[{u'octet-string':78.0}],[{u'octet-string':45.0}],[{u'octet-string':12.0}],[{u'octet-string': 23.0}],[{u'octet-string':65.0}],[{u'octet-string':65.0}],[{u'octet-strin g':45.0}],[{u'octet-string':78.0}],[{u'octet-string':899.0}],[{u'octet-string':8989.0}],[{字節串 ':6565.0}],[{u'octet字符串':323.0}],[{u'octet字符串「:1211.0}]}

什麼是得到最有效的方法值[15.0,12.0,12.0,12.0,45.0 ,,,,等]

+0

爲什麼用列表封裝你的內部字典,如果他們只有1個值? – 2011-03-14 11:10:40

+0

項目要求:) – Cracker 2011-03-14 11:13:43

+5

您有一本詞典,其中包含一個列表列表,每個列表包含一個具有一個值的字典,並且所有這些字典都使用該值作爲相同的鍵。這可能是有史以來最糟糕的存儲模式。 – unholysampler 2011-03-14 11:15:13

回答

4

這使得各種關於你處理數據的假設,但在你給,你可以做到這一點,例如:

[ a[0].values()[0] for a in d['array'] ] 

...其中d是你的字典,如上所述。計算結果爲:

[15.0, 12.0, 12.0, 12.0, 45.0, 78.0, 89.0, 65.0, 352.0, 
45.0, 12.0, 45.0, 78.0, 98.0, 352.0, 56.0, 89.0, 78.0, 
45.0, 12.0, 23.0, 65.0, 65.0, 45.0, 78.0, 899.0, 8989.0, 
6565.0, 323.0, 1211.0] 
+0

感謝馬克它的魅力 – Cracker 2011-03-14 11:21:34

0
[elem[0].values()[0] for elem in yourDict['array']] 
0

如果你有一本字典d,您可以使用d.values()得到字典中所有的值。例如:

d = {'a': 1.0, 'b': 2.0} 
print(d.values()) # [1.0, 2.0]