众所周知,python中字典是无序的,那么该如何对字典排序呢?
例如下面的字典:
1 | numbers = {'second': 2,'first': 1, 'third': 3, 'Fourth': 4} |
我们可以通过list()函数打印value,1
2>>>list(numbers)
['second', 'first', 'third', 'Fourth']
备注:
python3.6.4 以上的版本,字典根据插入的顺序自动排序
如何根据key 对字典排序
可以使用python的内置函数sorted
来对字典排序,如下面的代码
1 | sorted(numbers) |
结果有点差强人意,因为默认sorted
函数是根据字母的顺序升序排列的,这里的字典中 key 恰好是字母,所以才会显示这个结果。
根据value对字典排序
用同样的方法,我们可以根据value来排序
1 | sorted(numbers.values()) |