在Python中,`key=str.lower` 是一个关键字参数,用于指定排序时使用的键函数。当你使用 `sorted` 函数对列表进行排序时,`key` 参数允许你指定一个函数,该函数会在排序过程中应用于列表的每个元素,以确定元素的排序顺序。
当你使用 `key=str.lower` 时,你告诉 `sorted` 函数使用字符串的 `lower` 方法作为排序依据。这意味着列表中的每个元素(假设它们是字符串)都会首先被转换成小写,然后根据转换后的字符串进行排序。
例如,如果你有一个包含学生姓名的列表,并且你想根据学生的年龄进行排序,同时忽略大小写,你可以这样做:
student_tuples = [
('john', 'A', 15),
('jane', 'B', 12),
('dave', 'B', 10)
]
sorted_students = sorted(student_tuples, key=lambda student: student)
在这个例子中,`lambda student: student` 是一个匿名函数,它返回列表中每个元组的第三个元素(即年龄)。`key=str.lower` 并不直接应用于 `lambda` 函数,而是 `sorted` 函数在比较元素时,会调用每个元素的 `lower` 方法作为比较键。