python用字典的值排序
时间: 2024-08-23 19:02:40 浏览: 46
python字典值排序并取出前n个key值的方法
在Python中,字典本身是无序的,因为它们是关联类型的集合,键值对的顺序并不是固定的。如果你想要对字典的值进行排序,你需要先将字典转换为列表或其他可以排序的数据结构,比如元组,然后按照值来进行排序。
这里有一个例子:
```python
# 假设我们有这样一个字典
my_dict = {'c': 3, 'a': 1, 'b': 2}
# 首先,你可以创建一个新的列表,其中包含字典的所有键值对,然后按照值排序
sorted_items = sorted(my_dict.items(), key=lambda x: x[1])
# 现在 `sorted_items` 就是一个元组列表,按值从大到小排序:
# [('c', 3), ('b', 2), ('a', 1)]
# 如果你想得到一个字典,但是保持原来的键,可以使用 dict() 函数:
sorted_dict = {k: v for k, v in sorted_items}
```
如果你想按照升序排列,只需将 `key=lambda x: x[1]` 中的 `-` 号去掉即可。
阅读全文