如下python代码中t[1]为什么就取到成绩?

# 姓名和成绩
L = [('Bob', 75), ('Adam', 92), ('Bart', 66), ('Lisa', 88)]
def by_score(t):
return t[1]
L2 = sorted(L, key = by_score,reverse=True)
print(L2)

繁华开满天机
浏览 664回答 1
1回答

繁花如伊

by_score作为sorted的排序函数使用时,它接受的是L的每一个元。因此,t即列表L中的一个元组('Bob',75)这样的。而在Python中,元组与列表的序号都是从0开始的,t[1]即为该元组第二个元素,即75。这就是成绩。只使用一次的话可以这样写:1L2 = sorted(L, key = lambda x:x[1],reverse=True)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python