如何对 Python 日期字符串列表进行排序?
在本文中,我们将展示如何对Python日期字符串列表进行排序。现在我们看到了三种方法来完成此任务−
现在我们看到了两种方法来完成此任务−
- 使用sort()和lambda函数
-
使用sort()函数
-
使用sorted函数
阅读更多:Python 教程
方法1:使用sort()和lambda函数
算法(步骤)
执行所需任务的算法/步骤如下−
- 使用import关键字从datetime模块中导入datetime(要使用日期和时间,Python有一个叫做datetime的模块)。
-
创建一个变量来存储日期字符串的输入列表。
-
使用sort()函数来对日期列表进行排序,并将lambda函数作为参数传递给它。在lambda函数中,我们使用strptime()函数将每个日期转换为日期对象(将字符串格式的时间戳格式化为日期时间对象)。
-
排序后,打印输入的日期字符串列表。
示例
###
下面的程序使用datetime模块返回输入日期字符串列表的排序列表−
输出
执行上述程序后,会生成以下输出结果−
方法2:使用sort()函数
sort()方法会原地对原始列表进行排序。这意味着sort()方法会改变列表元素的顺序。
默认情况下,sort()方法使用小于号(<)来对列表条目进行排序,即按降序排列;换句话说,它将优先考虑较小的元素。
要按从最高到最低的顺序排序元素(即按升序排序),可以在sort()方法中使用reverse=True参数。
算法(步骤)
执行所需任务的算法/步骤如下−
- 创建一个变量来存储日期字符串的输入列表。
-
创建一个接受输入列表作为参数的函数。
-
使用split()函数(将字符串拆分为列表。我们可以定义分隔符。默认分隔符是任何空格),根据‘-’分隔符拆分元素列表。
-
使用sort()函数,通过将函数名作为参数的关键字来对输入日期字符串列表进行排序。
-
排序后,打印输入的日期字符串列表。
示例
以下程序使用sort()函数返回输入日期字符串列表的排序列表 −
输出
我们输入了一个日期列表,然后编写了一个以列表元素(日期)作为参数的函数,然后将日期拆分为分别为月份和年份的单独元素并返回它。我们在给定列表上使用了sort()函数并将函数名称作为参数传递。结果sort()函数将函数应用于每个元素并相应地排序。
方法3:使用sorted()函数
sorted()函数返回给定迭代对象的排序列表。
您可以选择升序或降序。数字按数字顺序排列,而字符串按字母顺序排列。
语法
参数
- 可迭代 -它是一个序列。
-
关键 -将执行以确定顺序的函数。默认值为None。
-
反转 -布尔表达式。 True为按升序排序,False为按降序排序。默认值为False。
算法(步骤)
使用sorted函数将输入日期字符串列表排序,通过将列表,键作为函数名作为参数传递给它并打印输出
例子
以下程序使用sorted函数返回输入日期字符串列表的排序列表 −
输出
这与前一种方法相同,只是sorted()函数接受了输入列表和函数作为参数。在这种情况下,我们使用函数名作为关键因素,因为sorted()函数将每个日期拆分并基于其进行排序。
结论
我们在本文中学习了如何使用三种不同的方法对日期列表进行排序。我们还学习了如何使用split()函数将给定的日期分为月份和年份。