在Python中,可以使用sorted()
函数和key
参数来按照另一列的值对一列进行排序。
假设我们有一个包含学生姓名和对应分数的列表,我们想按照分数对学生进行排序。以下是一个示例代码:
students = [("Alice", 85), ("Bob", 90), ("Charlie", 80), ("David", 95)]
# 按照分数对学生进行排序
sorted_students = sorted(students, key=lambda x: x[1])
# 打印排序后的学生列表
for student in sorted_students:
print(student)
输出结果为:
('Charlie', 80)
('Alice', 85)
('Bob', 90)
('David', 95)
在上面的代码中,我们使用sorted()
函数对students
列表进行排序。key
参数接受一个函数,该函数用于提取每个元素的排序关键字。
在这里,我们使用了一个lambda
函数作为key
参数。lambda
函数接受一个元素x
,并返回该元素的第二个值x[1]
,即分数。这样,sorted()
函数就会根据分数对学生进行排序。
最后,我们使用一个循环打印排序后的学生列表。
请注意,sorted()
函数返回一个新的已排序的列表,而不会修改原始列表。 如果您想在原列表上进行排序,请使用list.sort()
方法。
下一篇:按照另一列的值进行分组并获取值