python 字典按照value排序
时间: 2023-04-16 19:03:43 浏览: 147
可以使用sorted函数对字典的value进行排序,然后再根据排序后的value来获取对应的key。具体实现可以参考以下代码:
```python
my_dict = {'a': 3, 'b': 1, 'c': 2}
# 按照value排序
sorted_dict = sorted(my_dict.items(), key=lambda x: x[1])
# 输出排序后的结果
print(sorted_dict)
# 根据排序后的value获取对应的key
sorted_keys = [x[] for x in sorted_dict]
# 输出排序后的key
print(sorted_keys)
```
输出结果为:
```
[('b', 1), ('c', 2), ('a', 3)]
['b', 'c', 'a']
```
相关问题
python字典按照value排序
在Python中,可以使用内置的函数sorted()和lambda表达式来按照字典的value进行排序。具体的实现方法如下所示:
对于一个字典d,我们可以使用如下的代码来按照value进行递增排序:
sorted_d = sorted(d.items(), key=lambda x: x[1])
这里,使用了内置函数sorted()来对字典d的所有项按照value进行排序,其中key参数指定了排序依据,这里使用了lambda表达式来指定将每个项的value作为排序依据。
其中,sorted()函数的返回值是一个列表,其中每个元素是(d键, d值)的元组,代表了按照value排好序的字典d。
如果我们需要按照value进行递减排序,则可以使用如下的代码:
sorted_d = sorted(d.items(), key=lambda x: x[1], reverse=True)
在lambda表达式后面加上reverse=True参数,即可实现按照value进行递减排序。
需要注意的是,按照value排序的结果是一个列表,而不是一个字典,如果需要将其转换为字典,可以使用字典推导式,例如:
sorted_dict = {k: v for k, v in sorted(d.items(), key=lambda x: x[1])}
上述代码会将按照value排序好的列表转换为字典sorted_dict,其中每个元素的键和值都与排好序的列表项相同。
python字典按照value排序倒叙
可以使用Python中的sorted()函数和lambda表达式来实现按值(value)排序。具体代码如下:
``` python
my_dict = {'apple': 10, 'banana': 5, 'orange': 20}
# 按值(value)排序
sorted_dict = sorted(my_dict.items(), key=lambda x: x[1], reverse=True)
# 输出排序后的字典
print(sorted_dict)
```
输出结果:
``` python
[('orange', 20), ('apple', 10), ('banana', 5)]
```
在上述代码中,我们使用sorted()函数对字典(my_dict)进行排序。sorted()函数接收一个可迭代对象(这里是字典的items()方法),并根据key参数(这里使用了lambda表达式来指定按值排序)进行排序。reverse=True参数表示逆序排序。最终,我们得到一个按值排序后的元组列表(sorted_dict)。
阅读全文