如何以尊重大小写的方式对字典值进行排序?

时间:2012-06-17 21:18:49

标签: python

我们如何根据大写字母字母person[:][1][2]

对下列字典进行排序

由于

3 个答案:

答案 0 :(得分:3)

您可能只想使用值,而不是字典。字典通常不是有序的,因为您希望允许通过散列来优化数据结构。

sorted(persons.values(), key=lambda item: item[2])

是获取包含字典值的排序列表的最简单方法。

也许您打算首先使用list而不是dict

答案 1 :(得分:3)

现代Python中很容易解决这个问题:

>>> from collections import OrderedDict
>>> d={....your data....}

>>> d = OrderedDict(sorted(d.items(), key=lambda item: item[1][2]))

答案 2 :(得分:1)

lst = list(person.items())
lst.sort(key=lambda x: x[1][2])

如果你想按字母排序,那么姓氏,然后是名字:

lst = list(person.items())
lst.sort(key=lambda x: x[1][2] + ' ' + x[1][0] + ' ' + x[1][1])