的Python 2.7
文档
collections.OrderedDict具有指向在Python
2.4或更高版本上运行的OrderedDict配方的链接。
编辑:
关于排序:使用
key=而不是
cmp=。它倾向于导致更快的代码,此外,该
cmp=关键字在Python3中已被删除。
d={5:6,7:8,100:101,1:2,3:4}print(d.items())# [(1, 2), (3, 4), (100, 101), (5, 6), (7, 8)]您发布的代码
mycmp并不清楚您要传递的代码
x1。下面,我假定X1应该是所述 值 中的每个键-值对。如果是这样,您可以执行以下操作:
length=4print(sorted(d.items(),key=lambda item: abs(item[1]-length) ))# [(3, 4), (1, 2), (5, 6), (7, 8), (100, 101)]
key=...传递了一个函数
lambda item: abs(item[1]-length)。对于每个
itemin
d.items(),lambda函数将返回数字
abs(item[1]-length)。就排序而言,此数字充当项目的代理。有关在Python中对习惯用语进行排序的更多信息,请参见本文。
PS。
len是Python的内置函数。为了避免麻烦
len,我将变量名称更改为
length。



