我正在嘗試編寫一行代碼來從Python中的2級嵌套字典中提取鍵。從Python中的嵌套字典中提取鍵
這裏是我的數據樣本:
values = [(u'Andy', OrderedDict([(u'en', 102)])), (u'Ben', OrderedDict([(u'es', 1)])), (u'Jane', OrderedDict([(u'EN', 719), (u'en', 969)])), (u'Steve', OrderedDict([(u'fr', 1)])), (u'Susanne', OrderedDict([(u'nl', 2)]))]
預期的結果將是:
[u'en', u'es', u'EN', u'fr', u'nl']
到目前爲止,我已經試過:
map(lambda x: x[1].keys(), values.items())
AttributeError: 'unicode' object has no attribute 'keys'
reduce(lambda k, v: v.keys(), values.items())
AttributeError: 'tuple' object has no attribute 'keys'
這需要一個單線程,因爲我在Jinja模板中插入代碼,因此我試圖使用lambda。雖然我對Python很陌生,也許我誤解了一些東西......?
不結果需要維持秩序? – timgeb
Hi @timgeb無需保存訂單。 – user2761030