У меня есть список и словарь:Сортировка списка на основе другого СЛОВАРЬ
list1 = ["a", "b", "c", "d"]
dict1 =
{
"a": 4,
"b": 3,
"c": 5,
"d": 9,
"e": 2,
"f": 8
}
То, что я хочу сделать, это своего рода песни1 по соответствующему значению в dict1.
В приведенном выше примере, я хочу список, чтобы стать ["b", "a", "c", "d"]
, отсортированных в соответствии с их значениями ..
Я знаю, что это должно быть что-то вроде ...
list2 = sorted(list1, key=dict1[x])
Но я застрял :((
Любая помощь будет очень ценна
Downvoter: Как я могу улучшить ответ? – falsetru
Я одобрил, но вы должны рассмотреть использование 'dict1 .__ getitem__', поэтому возникает исключение, если отсутствует ключ, вместо того, чтобы просто использовать' None' для ключа. В Python3, если какой-либо из ключей отсутствует, вы получите 'TypeError: unorderable types: NoneType()
@gnibbler, Спасибо за комментарий. Ты прав. Я обновил код ответа, чтобы использовать 'dict .__ getitem__'. – falsetru