美文网首页
python3排序 sorted(key=lambda)

python3排序 sorted(key=lambda)

作者: 1直领悟不够 | 来源:发表于2019-08-11 12:55 被阅读0次
    1. 先创建一个列表a

    2. image
    3. 直接使用sorted方法,返回一个列表就是排序好的

    4. image
    5. 假如a是一个由元组构成的列表,这时候就麻烦了,我们需要用到参数key,也就是关键词,看下面这句命令,lambda是一个隐函数,是固定写法,不要写成别的单词;x表示列表中的一个元素,在这里,表示一个元组,x只是临时起的一个名字,你可以使用任意的名字;x[0]表示元组里的第一个元素,当然第二个元素就是x[1];所以这句命令的意思就是按照列表中第一个元素排序

    6. image
    7. 按照第二个元素排序:

    8. image
    9. 我们还可以使用reverse参数实现倒序排列

    10. image

    高阶用法:

    
    >>a = [[2,3],[4,1],(2,8),(2,1),(3,4)]
    >>b = sorted(a,key=lambda x: (x[0], -x[1]))
    >>print(b)
    
    [(2, 8), [2, 3], (2, 1), (3, 4), [4, 1]]
    key=lambda x:(x[0],x[1]) ,则会根据参数的第一个字段,第二个字段按照正序排列;
    key=lambda x:(x[0],-x[1]) ,则会根据参数的第一个字段正序,第二个字段按照逆序排列;
    

    相关文章

      网友评论

          本文标题:python3排序 sorted(key=lambda)

          本文链接:https://www.haomeiwen.com/subject/oeojjctx.html