@maryaTurova

Как отсортировать объект относительно списка?

Уважаемые! Подскажите пожалуйста как проще всего решить данную головоломку!

Имеется список такого вида:
["15","17","23","48"]
И имеется объект:
{"3263":"48","3878":"17","9512":"15","9673":"23"}

Как отсортировать объект по значению относительно списка? Т.е. мне надо получить на выходе список от ключей объекта.
В вышеизложенном варианте получить так:
["9512","3878","9673","3263"]
  • Вопрос задан
  • 79 просмотров
Решения вопроса 1
adugin
@adugin Куратор тега Python
lst = ["15","17","23","48"]
dic = {"3263":"48","3878":"17","9512":"15","9673":"23"}

list(map({v:k for k, v in dic.items()}.get, lst))
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@mkone112
Начинающий питонист.
Как вариант:
[*dict(sorted(d.items(), key=lambda x: l.index(x[1])))]  # same keys are lost

[i[0] for i in sorted(d.items(), key=lambda x: l.index(x[1]))]
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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