这个只能手动排序吗 那如果人数很多要怎么操作

来源:5-7 Python替换list中的元素

阿差

2021-07-31 15:33

问题描述:
有主动排序的方法吗

写回答 关注

4回答

  • AlvinCN
    2023-04-23 02:40:17

    students = ['Alice', 'Bob', 'Candy', 'David', 'Ellena'] 

    score = [89, 72, 88, 79, 99]

    sort = sorted(zip(students,score),key=lambda x: x[1],reverse=True)

    print(sort)

    print(zip(*sort)[0])


    慕无忌722...

    高端啊

    2023-10-16 21:19:44

    共 1 条回复 >

  • 芬芳莹莹
    2022-01-05 15:43:49

    自己写代码:

    结果:

    [99, 89, 88, 79, 72]
    ['Ellena', 'Alice', 'Candy', 'David', 'Bob']

    代码:

    names = ['Alice', 'Bob', 'Candy', 'David', 'Ellena']

    scores = [89, 72, 88, 79, 99]

    for i in range(len(scores)):

        s = scores[i]

        flag = i

        for j in range(i,len(scores)):

            if(scores[flag] < scores[j]):

                flag = j

        temp = ''

        x = 0

        temp = names[i]

        names[i] = names[flag]

        names[flag] = temp

        x = scores[i]

        scores[i] = scores[flag]

        scores[flag] = x

    print(scores)   

    print(names)

    下载视频          

    芒果不忙_ 回复幕布斯812...

    hhhhh笑死了,是的,看了一大串瞬间不想仔细看了,笑死

    2022-02-22 15:07:42

    共 2 条回复 >

  • weixin_慕哥1338196
    2021-08-02 15:38:23

    # Enter a code

    def get_second(elem):

        return elem[1]


    L = [('Alice',89), ('Bob',72), ('Candy',88), ('David',79), ('Ellena',99)]

    L.sort(key=get_second,reverse=True)

    print(L)


    weixin...

    百度一下python中sort的用法就知道啦

    2021-08-02 15:40:08

    共 1 条回复 >

  • weixin_慕哥1338196
    2021-08-02 15:38:07

    # Enter a code

    def get_second(elem):

        return elem[1]


    L = [('Alice',89), ('Bob',72), ('Candy',88), ('David',79), ('Ellena',99)]

    L.sort(key=get_second,reverse=True)

    print(L)


Python3 入门教程(新版)

python3入门教程,让你快速入门并能编写简单的Python程序

154173 学习 · 1075 问题

查看课程

相似问题