TGViewer
Just Python Just Python @justpython_it · 9.78K subscribers
Post #5083 381
Устойчивость сортировки

Допустим данные нужно отсортировать сначала по столбцу А по возрастанию, затем по столбцу B по убыванию, и наконец по столбцу C снова по возрастанию.

Если данные в столбце B числовые, то при помощи подходящей функции в key можно поменять знак у элементов B, что приведёт к необходимому результату.
А если все данные текстовые? Тут есть такая возможность.
Дело в том, что сортировка sort в Python устойчивая (начиная с Python 2.2), то есть она не меняет порядок «одинаковых» элементов.

Поэтому можно просто отсортировать три раза по разным ключам.

#theory // Just Python
More from @justpython_it
  1. Oct 3, 2026Подсчет вхождений в список Используйте Counter из библиотеки коллекций, чтобы получить сло…
  2. Oct 3, 2026Тернарный оператор условного присваивания Это еще один способ сделать код более кратким и…
  3. Oct 2, 2026Объединение циклов с помощью встроенных функций Python Вот так можно объединить два списка…
  4. Oct 2, 2026Применение библиотек numpy и pandas в Python Преимущества: Обеспечивает мощные инструменты…
  5. Oct 1, 2026Обмен значениями при помощи кортежей Один из популярных трюков в Python – обмен значениями…
  6. Oct 1, 2026Использование contextlib для создания контекстных менеджеров Преимущества: Позволяет созда…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →