@kaktak255

Каким образом эти два списка можно отсортировать?

Есть два списка, список первый содержит:
list_1 = ['б','в','а','г']  # и вообще любые другие символы в ' '

Список второй содержит:
list_2 = [1,2,0,3]

Нужно отсортировать первый список до вида а,б,в,г с помощью второго списка.
Получилось это сделать соединив эти два списка в словарь, где цифры были ключами а буквы значением, и отсортировав словарь по ключам, и далее уже вытащив отсортированные значения вида а,б,в,г

Отсортированный вид:
list_1 = ['a','б','в','г']
list_2 = [ 0,  1,  2,  3 ]


Какие еще есть варианты сделать это?
  • Вопрос задан
  • 124 просмотра
Решения вопроса 2
0xD34F
@0xD34F
sorted_1, sorted_2 = map(list, zip(*sorted(zip(list_1, list_2), key=lambda n: n[1])))
Ответ написан
Комментировать
@zexer
list_1 = ['б','в','а','г']

list_2 = [1,2,0,3]

[x for _,x in sorted(zip(list_2,list_1))]
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@alexbprofit
Junior SE
a, b = sorted(a), sorted(b)
print(a, \n, b)
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы