为什么 Python 代码输出是这样的? (涉及 lambda 函数)
Why is the Python code output like this? (lambda function involved)
我找到了一个代码,它根据构成列表的元组中指定的等级对列表的元素进行排序。
我不明白它是如何工作的:不应该在参数数据被引用到学生列表的地方指定?
谢谢
students = [("Squidwaard", "F", 60),
("Sandy", "A", 33),
("Patrick", "D", 36),
("Spongebob", "B", 20),
("Mr.Krabs", "C", 78)]
grade = lambda data: data[1]
students.sort(key=grade)
for i in students:
print(i)
好吧,您确实在代码中指定了。您已经编写了一个函数(匿名)并调用了 students.sort(key=grade)
键的作用是使用给定的函数对其进行排序。因此,您按第一个索引元素排序,即字母等级。希望这对您有所帮助,祝您有愉快的一天!
我找到了一个代码,它根据构成列表的元组中指定的等级对列表的元素进行排序。 我不明白它是如何工作的:不应该在参数数据被引用到学生列表的地方指定? 谢谢
students = [("Squidwaard", "F", 60),
("Sandy", "A", 33),
("Patrick", "D", 36),
("Spongebob", "B", 20),
("Mr.Krabs", "C", 78)]
grade = lambda data: data[1]
students.sort(key=grade)
for i in students:
print(i)
好吧,您确实在代码中指定了。您已经编写了一个函数(匿名)并调用了 students.sort(key=grade)
键的作用是使用给定的函数对其进行排序。因此,您按第一个索引元素排序,即字母等级。希望这对您有所帮助,祝您有愉快的一天!