2015-08-07 4 views
2

Скажем, у меня есть следующий словарь:Сортировка значений словаря из ключей в упорядоченном списке

FruitValues={'Banana':3, 'Orange':4, 'Apple':1} 

И у меня есть список ключей этого словаря в порядке, что я хочу сохранить:

SortOrder=['Orange', 'Apple', 'Banana'] 

Что является наиболее эффективным способом получения списка значений из словаря в порядке списка?

Сейчас мой подход заключается в следующем:

OrderedValues=[] 
for Fruit in SortOrder: 
    OrderedValues.append(FruitValues[Fruit]) 
print OrderedValues 

[4, 1, 3] 

Есть ли лучше/уборщик способ сделать это? Может быть, используя понимание словаря?

ответ

6

Использование списка понимание:

>>> [FruitValues[i] for i in SortOrder] 
[4, 1, 3] 
Смежные вопросы