按日期时间值对Python字典进行排序

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

  • 如何按价值对字典进行排序? 38个答案

  • 你可以像这样对键进行排序:

    sorted(dct, key=dct.get)
    

    请参阅Sorting Mini-HOW TO以了解对此和其他排序技术的解释。


    记住问题是如何按日期时间值排序,这里有一个可能的答案:

    sorted(dct.items(), key=lambda p: p[1], reverse=True)
    
    => [('raspberry', datetime.datetime(2013, 1, 9, 0, 0)),
        ('apple', datetime.datetime(2012, 12, 20, 0, 0)),
        ('orange', datetime.datetime(2012, 2, 4, 0, 0))]
    

    如果你只对密钥感兴趣:

    [k for k, v in sorted(dct.items(), key=lambda p: p[1], reverse=True)]
    
    => ['raspberry', 'apple', 'orange']
    

    这很简单,你只需要做,就像:

     from operator import itemgetter
     sorted(a.items(),key=itemgetter(1),reverse=True)
    
    链接地址: http://www.djcxy.com/p/18153.html

    上一篇: Sort Python dict by datetime value

    下一篇: Sort dict by highest value?