把字典转化成列表排序
时间: 2023-07-01 18:22:19 浏览: 64
可以使用 Python 中的 sorted 函数将字典转化成列表排序。以下是示例代码:
```python
my_dict = {'a': 2, 'd': 4, 'b': 1, 'c': 3}
# 将字典转化成由元组组成的列表
my_list = list(my_dict.items())
# 按照元组中第二个元素(即字典的值)进行排序
sorted_list = sorted(my_list, key=lambda x: x[1])
# 输出排序后的列表
print(sorted_list)
```
输出结果为:
```
[('b', 1), ('a', 2), ('c', 3), ('d', 4)]
```
在上述示例中,我们首先将字典转化成由元组组成的列表,然后使用 sorted 函数按照元组中第二个元素(即字典的值)进行排序。最后,输出排序后的列表。
相关问题
用lambda函数对列表或者字典排序
对列表排序,可以使用lambda函数作为sorted()函数的key参数,例如:
```python
my_list = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
sorted_list = sorted(my_list, key=lambda x: -x)
print(sorted_list) # [9, 6, 5, 5, 5, 4, 3, 3, 2, 1, 1]
```
这里使用lambda表达式 `-x` 来进行降序排序。
对字典按照值进行排序,可以使用lambda函数作为sorted()函数的key参数,例如:
```python
my_dict = {'apple': 5, 'banana': 2, 'orange': 4, 'pear': 3}
sorted_dict = sorted(my_dict.items(), key=lambda x: x[1])
print(sorted_dict) # [('banana', 2), ('pear', 3), ('orange', 4), ('apple', 5)]
```
这里使用lambda表达式 `x[1]` 来按照字典值进行升序排序。注意,sorted()函数返回一个排序后的元素列表,因此对于字典,我们需要先使用items()方法将其转化为元素列表,再进行排序。
python 如何对字典进行排序
Python 中可以使用 sorted 函数对字典进行排序,具体步骤如下:
1. 将字典转化为列表,每个元素是一个键值对的元组。
2. 对列表进行排序,可以指定按照键或值排序。
3. 将排序后的列表转化为有序字典。
示例代码如下:
```python
# 定义一个字典
my_dict = {'apple': 12, 'banana': 8, 'orange': 5, 'peach': 6}
# 按照值从大到小排序
sorted_list = sorted(my_dict.items(), key=lambda x: x[1], reverse=True)
# 转化为有序字典
sorted_dict = dict(sorted_list)
print(sorted_dict)
```
输出结果为:
```python
{'apple': 12, 'banana': 8, 'peach': 6, 'orange': 5}
```
说明字典已经按照值从大到小排序。