字典按key值排序

 列表、字典排序:

data_dic = {'20190105': [{'name':'bbb','value': '222'}, {'name':'aaa', 'value': '111'}],
            '20190101': [{'name':'bbb','value': '333'}, {'name':'aaa', 'value': '555'}]}
# 列表按 name值字段排序
for key, value in data_dic.items():
    value_temp = sorted(value, key=lambda my_sort: my_sort['name'])
    data_dic[key] = value_temp
# 字典按key排序
data = dict(sorted(data_dic.items(), key=lambda x: x[0]))
print(data)
# 输出结果 {'20190101': [{'name': 'aaa', 'value': '555'}, {'name': 'bbb', 'value': '333'}], '20190105': [{'name': 'aaa', 'value': '111'}, {'name': 'bbb', 'value': '222'}]}

 列表按照指定顺序排序:

# 指定列表,假设存储的是curList中的ID列表
sortList = ["4", "3", "5"]
# 当前列表
curList = [{"id":"3", "name": "菠萝"},{"id": "4", "name": "橘子"},{"id": "5", "name": "橙子"}]
# 根据指定列表中的ID顺序,对当前列表进行排序
curList = sorted(curList, key=lambda item:sortList.index(item["id"]))
print(curList)
# 结果输出:
[{'id': '4', 'name': '橘子'}, {'id': '3', 'name': '菠萝'}, {'id': '5', 'name': '橙子'}]

 

posted on 2020-02-21 13:15  蜗牛也是妞  阅读(3388)  评论(0编辑  收藏  举报