[英]Python: The best way to get complex dictionary values
我有以下格式的字典
{'array':[[{u'unsigned':15.0}],[{u'octet-string':12.0}],[{u'octet-string':12.0}],[{u'octet-string ':12.0}],[{u'octet-string':45.0}],[{uuoctet-string':78.0}],[{uuoctet-string':89.0}],[{u'octet -string':65.0}],[{u'octet-string':352.0}],[{uuoctet-string':45.0}],[{u'octet-string':12.0}],[{u '八位位組字符串:45.0}],[{u'八位位組字符串:78.0}],[{u'八位位組字符串:98.0}],[{u'八位位組字符串:352.0}],[ {u'octet-string':56.0}],[{uuoctet-string':89.0}],[{uuoctet-string':78.0}],[{uuoctet-string':45.0}] ,[{u'octet-string':12.0}],[{uuoctet-string':23.0}],[{uuoctet-string':65.0}],[{u'octet-string':65.0 }],[{u'octet-string':45.0}],[{uuoctet-string':78.0}],[{uuoctet-string':899.0}],[{uuoctet-string' :8989.0}],[{u'octet-string':6565.0}],[{u'octet-string':323.0}],[{u'octet-string':1211.0}]]]}
什么是獲取[15.0,12.0,12.0,12.0,45.0,...等值]的最有效方法
這是對要處理的數據的各種假設,但是在示例中,您可以執行以下操作:
[ 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]
[elem[0].values()[0] for elem in yourDict['array']]
如果您有字典d
,則可以使用d.values()
獲取字典中的所有值。 例如:
d = {'a': 1.0, 'b': 2.0}
print(d.values()) # [1.0, 2.0]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.