L = [{k: d[k](v) for (k, v) in l.iteritems()} for l in L]
其中
L
是一个有序字典列表(即collections.OrderedDict对象),其中每个字典都具有相同的键集。d
是另一个有序字典,其键集与之前的有序字典相同。对于每个
key
,d[key]
是一个可以应用于L[i][key]
的函数,即d[key](L[i][key])
。
所有给定的字典都是有序字典,并且它们的键具有相同的顺序。
但是代码将创建一个无序字典。如何创建一个具有与给定有序字典相同键顺序的有序字典?
dict1 = OrderedDict({x: x**5 for x in (1, 5, 10)}).__class__ ord_dict = OrderedDict({x: x**5 for x in (1, 5, 10)}) print(ord_dict) # OrderedDict([(1, 1), (10, 100000), (5, 3125)])```
- Rohit DhankarOrderedDict
与此处的意外顺序无关。 - thefourtheye