猿问

Python列表按降序排序

我如何按降序排序这个列表?

timestamp = [
    "2010-04-20 10:07:30",
    "2010-04-20 10:07:38",
    "2010-04-20 10:07:52",
    "2010-04-20 10:08:22",
    "2010-04-20 10:08:22",
    "2010-04-20 10:09:46",
    "2010-04-20 10:10:37",
    "2010-04-20 10:10:58",
    "2010-04-20 10:11:50",
    "2010-04-20 10:12:13",
    "2010-04-20 10:12:13",
    "2010-04-20 10:25:38"]


aluckdog
浏览 3668回答 3
3回答

千巷猫影

在一行中,使用lambda:timestamp.sort(key=lambda x: time.strptime(x, '%Y-%m-%d %H:%M:%S')[0:6], reverse=True)将函数传递给list.sort:def foo(x):     return time.strptime(x, '%Y-%m-%d %H:%M:%S')[0:6]timestamp.sort(key=foo, reverse=True)

拉风的咖菲猫

这将给出数组的排序版本。sorted(timestamp, reverse=True)如果你想就地排序:timestamp.sort(reverse=True)

江户川乱折腾

由于您的列表已经按升序排列,我们可以简单地反转列表。>>> timestamp.reverse()>>> timestamp['2010-04-20 10:25:38', '2010-04-20 10:12:13', '2010-04-20 10:12:13', '2010-04-20 10:11:50', '2010-04-20 10:10:58', '2010-04-20 10:10:37', '2010-04-20 10:09:46', '2010-04-20 10:08:22','2010-04-20 10:08:22', '2010-04-20 10:07:52', '2010-04-20 10:07:38', '2010-04-20 10:07:30']
随时随地看视频慕课网APP

相关分类

Python
我要回答