复杂的python字典按值排序

时间:2012-08-27 03:19:41

标签: python sorting

我有一个字典,其中包含键的整数和值的字符串。我需要按字符串排序,这样当我去dict.values()时,我得到了排序列表。

字符串是这样的值:45_12_something_23

我需要将数字排序为数字,将字符串排序为字符串。保证给定行是字符串或数字(不是混合)。

在python中这样做的好方法是什么?表现不是问题。

1 个答案:

答案 0 :(得分:1)

将字典转换为(键,值)对列表。按照您的喜好对它们进行排序。 (或者那是你的问题 - 怎么做?)然后将排序的(键,值)对插入collections.OrderedDict,这将记住插入顺序并在迭代时使用相同的顺序。

请注意,您无法修改已有的dict,这将使您拥有所需属性的新dict