📅  最后修改于: 2023-12-03 14:54:41.404000             🧑  作者: Mango
在Python中,我们经常会遇到需要按照键值对(字典)中的键进行排序的情况。本文将介绍如何使用Python对字典列表进行按键排序。
字典是无序的,因此不能直接对字典进行排序,但是可以先将字典转换成列表,再对列表进行排序。
假设我们有一个字典列表students
,其结构如下所示:
students = [{'name': 'Jack', 'age': 23},
{'name': 'Mary', 'age': 21},
{'name': 'Tom', 'age': 25}]
要按照name
键对students
进行排序,可以使用Python的sorted
函数:
sorted_students = sorted(students, key=lambda x: x['name'])
以上代码将根据name
键对字典列表students
进行排序,并将排序结果存储在变量sorted_students
中。
如果要按照age
键对students
进行排序,可以将key
函数改为lambda x: x['age']
:
sorted_students = sorted(students, key=lambda x: x['age'])
下面是完整的按键排序字典列表Python代码:
students = [{'name': 'Jack', 'age': 23},
{'name': 'Mary', 'age': 21},
{'name': 'Tom', 'age': 25}]
# 按照name键排序
sorted_students = sorted(students, key=lambda x: x['name'])
print('按照name键排序:')
print(sorted_students)
# 按照age键排序
sorted_students = sorted(students, key=lambda x: x['age'])
print('按照age键排序:')
print(sorted_students)
输出结果:
按照name键排序:
[{'name': 'Jack', 'age': 23}, {'name': 'Mary', 'age': 21}, {'name': 'Tom', 'age': 25}]
按照age键排序:
[{'name': 'Mary', 'age': 21}, {'name': 'Jack', 'age': 23}, {'name': 'Tom', 'age': 25}]
完整代码片段如下markdown格式所示:
# 按键排序字典列表Python
在Python中,我们经常会遇到需要按照键值对(字典)中的键进行排序的情况。本文将介绍如何使用Python对字典列表进行按键排序。
## 排序方法
字典是无序的,因此不能直接对字典进行排序,但是可以先将字典转换成列表,再对列表进行排序。
假设我们有一个字典列表`students`,其结构如下所示:
```python
students = [{'name': 'Jack', 'age': 23},
{'name': 'Mary', 'age': 21},
{'name': 'Tom', 'age': 25}]
要按照name
键对students
进行排序,可以使用Python的sorted
函数:
sorted_students = sorted(students, key=lambda x: x['name'])
以上代码将根据name
键对字典列表students
进行排序,并将排序结果存储在变量sorted_students
中。
如果要按照age
键对students
进行排序,可以将key
函数改为lambda x: x['age']
:
sorted_students = sorted(students, key=lambda x: x['age'])
下面是完整的按键排序字典列表Python代码:
students = [{'name': 'Jack', 'age': 23},
{'name': 'Mary', 'age': 21},
{'name': 'Tom', 'age': 25}]
# 按照name键排序
sorted_students = sorted(students, key=lambda x: x['name'])
print('按照name键排序:')
print(sorted_students)
# 按照age键排序
sorted_students = sorted(students, key=lambda x: x['age'])
print('按照age键排序:')
print(sorted_students)
输出结果:
按照name键排序:
[{'name': 'Jack', 'age': 23}, {'name': 'Mary', 'age': 21}, {'name': 'Tom', 'age': 25}]
按照age键排序:
[{'name': 'Mary', 'age': 21}, {'name': 'Jack', 'age': 23}, {'name': 'Tom', 'age': 25}]