Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
以[MMM dd,MMM dd…]格式对日期进行Python排序的列表_Python_Sorting_Date_Operator Keyword - Fatal编程技术网

以[MMM dd,MMM dd…]格式对日期进行Python排序的列表

以[MMM dd,MMM dd…]格式对日期进行Python排序的列表,python,sorting,date,operator-keyword,Python,Sorting,Date,Operator Keyword,我有一份格式的清单 ['Jan 01', 'Feb 02', 'Mar 05', 'Feb 04', 'Jan 05', ...] 我想把它分类,以便 ['Jan 01', 'Jan 05', 'Feb 02', 'Feb 04', 'Mar 05'...] 我知道诸如operator.itemgetter('date')之类的事情,但我不认为这适用于这种格式您可以将日期解析为datetime对象: from datetime import datetime sorted(lst, key

我有一份格式的清单

['Jan 01', 'Feb 02', 'Mar 05', 'Feb 04', 'Jan 05', ...]
我想把它分类,以便

['Jan 01', 'Jan 05', 'Feb 02', 'Feb 04', 'Mar 05'...]

我知道诸如
operator.itemgetter('date')
之类的事情,但我不认为这适用于这种格式

您可以将日期解析为
datetime
对象:

from datetime import datetime

sorted(lst, key=lambda d: datetime.strptime(d, '%b %d'))
然后使用解析的
datetime
对象确定顺序

演示:


您可以将日期解析为
datetime
对象:

from datetime import datetime

sorted(lst, key=lambda d: datetime.strptime(d, '%b %d'))
然后使用解析的
datetime
对象确定顺序

演示:


您的列表是否充满了字符串,即
['Jan 01'、'Feb 02'、'Mar 05'、'Feb 04'、'Jan 05'…]
您的列表排序()
不起作用?@yedpodtrzitko试试看-它会给出
['Feb 02'、'Feb 04'、'Jan 01'、'Jan 05'、'Mar 05'、…]
,按默认值进行字典排序不,这只是一个例子,列表非常大。我假设它本身会按字典顺序排序,例如Apr会在Mar之前出现,但下面的解决方案可能会起作用(当然,我很傻。)你的列表是不是满是字符串,例如:
['Jan 01'、'Feb 02'、'Mar 05'、'Feb 04'、'Jan 05'…]
你的列表。sort()
不起作用?@yedpodtrzitko试试看-它会给出
[二月二日,二月四日,一月一日,一月五日,三月五日,…]
,按默认值按字母顺序排序不,这只是一个例子,列表非常大。我假设它本身会按字母顺序排序,因此例如Apr会在Mar之前,但下面的解决方案可能会起作用(当然,我很傻。)我认为这是可行的,谢谢!我不确定如何设置格式,但“%b%d”似乎不行rk@user3752900您可以看到格式化指令列表。我认为这是可行的,谢谢!我不确定格式化是如何工作的,但“%b%d”似乎可以work@user3752900您可以看到格式化指令的列表