Python: есть ли способ сортировки списка от более высокого к более низкому

1

У меня есть следующий фрагмент кода в python:

results = {}
....
results = sorted([(v, k) for (k, v) in results.items()])
....
return results[:limit]

results содержат расстояния, которые сортируются таким образом, чтобы меньшие расстояния находились в верхней части списка

Есть ли способ отсортировать этот список таким образом, чтобы более высокие расстояния находились в верхней части results? Или, если мы не перевернем элементы, есть способ получить последние элементы results вместо лучших результатов с использованием return results[:limit]

  • 1
    вы, вероятно, хотите reverse=True или / и модуль heapq
  • 0
    Вы заботитесь только о верхней (или нижней) позиции? Если это так, вы должны изучить использование куч (с библиотекой heapq ).
Показать ещё 1 комментарий
Теги:
python-3.x

2 ответа

0
Лучший ответ

Чтобы ответить на второй вопрос, который вы задали, поскольку @Ruzihm уже ответил первым, вы можете получить последние results:

return results[-limit:]
  • 1
    Большое спасибо за ваш ответ :)
1

Используйте опциональный параметр reverse в sorted функции:

results= sorted([(v, k) for (k, v) in results.items()], reverse=True)
  • 3
    если это ответ, то это супер-классический дубликат, на который вы должны воздерживаться
  • 0
    Если вы можете найти подходящий дубликат, сделайте ссылку на него, вместо того, чтобы просить других людей сделать это.
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню