6、sorted()对分别按名字和成绩排序

假设我们用一组tuple表示学生名字和成绩:

L = [('Bob', 75), ('Adam', 92), ('Bart', 66), ('Lisa', 88)]

请用sorted()对上述列表分别按名字和成绩排序:

# -*- coding: utf-8 -*-

L = [('Bob', 75), ('Adam', 92), ('Bart', 66), ('Lisa', 88)]

#先按名字排序:
def by_name(t):
    return t[0].lower()   #t是tuple,t[0]是姓名(字符串)!!!
L2 = sorted(L, key=by_name)
print(L2)

#再按成绩从高到低排序:
def by_score(t):
    return t[1]
L2 = sorted(L, key=by_score)
print(L2)

tuple类型本身没有lower()方法,t[0]是tuple的第一个元素,t[1]是tuple的第二个元素,以此类推!!!

原文地址:https://www.cnblogs.com/zwb8848happy/p/8428136.html