НовоеAI-конструктор резюме: правишь прямо на листе A4, а нейросеть подсказывает, что усилитьКонструктор резюме на листе A4Попробовать
JobPath
Начать бесплатно

Аналитика и менеджментMiddleТехнический

Как отсортировать список пар по второму элементу в Python

Встречался на собеседовании

Ответ

Что хотят услышать интервьюеры

Интервьюеры ожидают, что кандидат продемонстрирует понимание способов сортировки данных в Python, включая использование встроенных функций и методов. Важно показать знание о том, как работать с кортежами и списками, а также умение писать чистый и читаемый код. Ожидается также обсуждение сложности алгоритма и возможных альтернатив.

# Исходный список пар (кортежей)
pairs = [(1, 'apple'), (3, 'banana'), (2, 'cherry'), (5, 'date'), (4, 'fig')]

# Сортировка списка пар по второму элементу (по алфавиту)
sorted_pairs = sorted(pairs, key=lambda pair: pair[1])

# Вывод отсортированного списка
print(sorted_pairs)  # Ожидаемый вывод: [(1, 'apple'), (3, 'banana'), (5, 'date'), (2, 'cherry'), (4, 'fig')]

# Пример на случай, если элементы второго поля одинаковые
pairs_with_same_second = [(1, 'banana'), (2, 'banana'), (3, 'apple')]
sorted_pairs_same = sorted(pairs_with_same_second, key=lambda pair: pair[1])
print(sorted_pairs_same)  # Ожидаемый вывод: [(3, 'apple'), (1, 'banana'), (2, 'banana')]

Объяснение кода:

  1. Исходный список — создаем список pairs, содержащий кортежи, каждый из которых состоит из двух элементов.
  2. Сортировка — используем функцию sorted(), передавая в нее аргумент key, который указывает, что сортировка должна происходить по второму элементу кортежа. Для этого используем лямбда-функцию lambda pair: pair[1].
  3. Вывод результата — печатаем отсортированный список, чтобы убедиться, что элементы упорядочены по второму элементу в алфавитном порядке.
  4. Пример с одинаковыми вторыми элементами — демонстрирует, как обрабатываются кортежи с одинаковыми вторыми элементами.

Что могут спросить дальше

  • Объяснить, как работает лямбда-функция.
  • Показать, как сортировать по первому элементу.
  • Обсудить сложность алгоритма сортировки.
  • Примеры использования метода sort() для сортировки на месте.
Ответ помог?
Тренироваться бесплатно

Связаться с поддержкой

Выбери, где удобнее написать