如何根据价值对字典词典列表进行排序

这个问题在这里已经有了答案:

  • 如何根据Python中字典的值对字典列表进行排序? 17个答案

  • 你可以使用lambda函数作为函数的key参数

    >>> mydic = [{'name':'a', 'loc':{'locname':'z'}, 'id':{'value':'1'}},{'name':'b', 'loc':{'locname':'o'}, 'id':{'value':'2'}}]
    >>> sorted(mydic,key = lambda x:x['loc']['locname'])
    [{'loc': {'locname': 'o'}, 'name': 'b', 'id': {'value': '2'}}, {'loc': {'locname': 'z'}, 'name': 'a', 'id': {'value': '1'}}]
    

    参考文献:文档

    sorted(iterable[, cmp[, key[, reverse]]])

    key指定一个参数的函数,该参数用于从每个列表元素提取比较键: key=str.lower 。 默认值是None (直接比较元素)。

    链接地址: http://www.djcxy.com/p/70771.html

    上一篇: How to sort a list of dictionaries of dictionaries by value

    下一篇: How to multisort list of dictionaries in Python?