有人可以解释 lambda 在这种排序元组格式中的重要性吗?此外,这种排序方法的每个元素到底意味着什么?
sorted(authorlist, key = lambda tup: tup[0], reverse = True)
我知道反向=
True允许元组列表按降序排序,tup[0]
表示要排序的索引,第一个参数是元组/列表,但key = lambda
是什么意思,为什么元组称为tup
?
谢谢!
答案 0 :(得分:0)
lambda只是一个语法快捷方式,可以将函数作为参数放置,而无需在上面的行中明确定义它。 Lambdas受限制Lambdas仅限于单个表达式。因此,对于更长的功能,您必须单独定义它们
上面的代码可以重写为
def getKey():
return tup[0]
sorted(authorlist, key = getKey, reverse = True)
此代码在功能上与您在问题中发布的代码相同。 lambda的目的是从你正在排序的元组中提取第一个字段。