說我有這樣類型的字典列表:在python自定義排序詞典列表
sizes = [
{
'doc_count': 86,
'key': 'M'
},
{
'doc_count': 85,
'key': 'XL'
},
{
'doc_count': 84,
'key': 'L'
},
{
'doc_count': 84,
'key': 'XXL'
},
{
'doc_count': 66,
'key': 'S'
},
{
'doc_count': 66,
'key': 'XXXL'
}
]
什麼會根據預先定義的列表進行排序它最有效的方法:'S'
,'M'
, 'L'
,'XL'
,'XXL'
? (也許是更多的「排序」比排序)
我知道我可以這樣做:
new_list = []
size_map = ['S','M','L','XL','XXL','XXXL']
for size in size_map:
for i in range(len(sizes)):
if size in sizes[i].values():
new_list.append({ 'key': size, 'doc_count': sizes[i]['doc_count'] })
但我不知道是否有更好的方法。嘗試修改一些列表理解,但我還沒有得到任何工作。任何想法讚賞!
看看這個小提琴是否適合您的需求 - https://repl.it/Epi9 – marmeladze
這個效果很好!謝謝你這樣做 – tarponjargon