簡體   English   中英

根據值列表對字典列表進行排序

[英]Sort list of dictionaries according to the list of values

詞典列表:

 list_dict = [{'a': 'car', 'b': 4}, {'a': 'train', 'b': 10}, {'a': 'flight', 'b': 6}, {'a': 'bike', 'b': 2}]

我想根據值列表用鍵a對字典列表進行排序:

a_list = ["flight", "bike", "train", "car"]

我要的output:

[{'a': 'flight', 'b': 6}, {'a': 'bike', 'b': 2}, {'a': 'train', 'b': 10}, {'a': 'car', 'b': 4}]

最好不要對解決方案使用任何循環。

list_dict.sort(key=lambda x:a_list.index(x['a']))

嘗試:

print(sorted(list_dict, key=lambda k: a_list.index(k["a"])))

印刷:

[
    {"a": "flight", "b": 6},
    {"a": "bike", "b": 2},
    {"a": "train", "b": 10},
    {"a": "car", "b": 4},
]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM