可以使用Python的sorted()函数来对列表按照多个变量进行排序。sorted()函数可以传递一个关键字参数key,用于指定排序的规则。
下面是一个示例代码,展示如何按多个变量对列表进行排序:
# 创建一个包含多个字典的列表
data = [
{'name': 'Tom', 'age': 30, 'score': 85},
{'name': 'Alice', 'age': 25, 'score': 92},
{'name': 'Bob', 'age': 35, 'score': 80}
]
# 按照name和age进行排序
sorted_data = sorted(data, key=lambda x: (x['name'], x['age']))
# 输出排序后的结果
for item in sorted_data:
print(item)
在上述示例中,我们创建了一个包含多个字典的列表data,每个字典表示一个人的信息,包括姓名name、年龄age和分数score。然后,我们使用sorted()函数对该列表进行排序,通过key参数指定排序的规则。lambda函数用于定义多个排序条件,按照name和age进行排序。最后,我们遍历排序后的结果并输出。输出结果如下:
{'name': 'Alice', 'age': 25, 'score': 92}
{'name': 'Bob', 'age': 35, 'score': 80}
{'name': 'Tom', 'age': 30, 'score': 85}
可以看到,列表按照name和age进行了排序。如果两个人的name相同,则按照age排序。
上一篇:按多个 \n 进行分割并保持不变
下一篇:按多个变量对数据框进行排序