对python中字典类型的数据进行排序的方法如下:
方法一: key使用lambda匿名函数取value进行排序
dict = {'a': 1, 'b': 4, 'd': 2, 'e': 12}
a = sorted(dict.items(), key=lambda x: x[1])
a1 = sorted(dict.items(), key=lambda x: x[1], reverse=True)
print(a)
print(type(a))
print(a1)
运行结果如下: 可以看到得到的结果是列表类型的
我们也可以key使用lambda匿名函数按key进行排序
dict = {'a': 1, 'b': 4, 'd': 2, 'e': 12}
a = sorted(dict.items(), key=lambda x: x[0])
a1 = sorted(dict.items(), key=lambda x: x[0], reverse=True)
print(a)
print(a1)
运行结果如下:
方法二: 使用operator的itemgetter进行排序
dict = {'a': 1, 'b': 4, 'd': 2, 'e': 12}
import operator
a = sorted(dict.items(), key=operator.itemgetter(1))
a1 = sorted(dict.items(), key=operator.itemgetter(0))
print(a)
print(a1)
运行结果如下:
方法三: 将key和value分装成元组,在进行排序
dict = {'a': 1, 'b': 4, 'd': 2, 'e': 12}
a = zip(dict.keys(), dict.values())
b = sorted(a)
print(b)
运行结果如下:
|