@aqau123

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

Есть массив:
[[4, '...', '...'], [3, '...', '...'], [1, '...', '...'], [2, '...', '...']]

Как его отсортировать так, чтоб в итоге он был в виде:
[[1, '...', '...'], [2, '...', '...'], [3, '...', '...'], [4, '...', '...']]

Уже есть решение, но я уверен оно не самое оптимальное, а скрипт работает обычно с большими данными, так что разница будет заметная.
Голова вообще сейчас не варит, искал баг полтора часа, как оказалось set() меняет порядок элементов...
  • Вопрос задан
  • 234 просмотра
Решения вопроса 3
@antares4045
Посмотрите на параметр key у встроеной функций sort и sorted. Они сделаны в первую очередь для решения вашей проблемы.
Ответ написан
Комментировать
@Wispik
a = [[4, '...', '...'], [3, '...', '...'], [1, '...', '...'], [2, '...', '...']]
b = sorted(a, key=lambda x: x[0])
Ответ написан
Комментировать
fox_12
@fox_12 Куратор тега Python
Расставляю биты, управляю заряженными частицами
arr = [[4, 3, 5], [3, 0, 7], [1, 9, 1], [2, 0, 7]]
sorted(arr, key=lambda x:x[0])
# [[1, 9, 1], [2, 0, 7], [3, 0, 7], [4, 3, 5]]
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы