Как мы можем получить этот вывод? - PullRequest
0 голосов
/ 05 октября 2019

Мы все знаем, что 20.1> 20, но когда я скомпилирую этот код, посмотрим, какой результат я получу

1


if __name__ == '__main__':
    arr=[]
    max
    for i in range(int(input("Range: "))):
        name = input("Name: ")
        score = float(input("Score: "))
        item=[name,score]
        arr.append(item)
    arr.sort(reverse=True)
    print(arr)

Я ожидал, что 40, 20,1,20,01,20,001 и т. Д., Но я получил 40,20,20,1,20,01, 20,001 и т. Д.

1 Ответ

0 голосов
/ 05 октября 2019

Ваш ключ сортировки неверен. Рабочий код выглядит так:

if __name__ == '__main__':
    arr=[]
    max
    for i in range(int(input("Range: "))):
        name = input("Name: ")
        score = float(input("Score: "))
        item=[name,score]
        arr.append(item)
    arr.sort(key=lambda x: x[1] , reverse=True)
    print(arr)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...