在 Python 中,可以使用 sorted()
函数来按日期格式排序包括空值的列表。首先,需要使用 datetime
模块来将字符串转换为日期对象。然后,可以使用 key
参数来指定按日期排序的依据。
以下是一个示例代码:
from datetime import datetime
# 原始列表包含日期字符串和空值
dates = ['2022-01-05', '2022-01-03', '2022-01-07', '', '2022-01-01']
# 将字符串转换为日期对象的函数
def convert_to_date(date_str):
if date_str:
return datetime.strptime(date_str, '%Y-%m-%d')
# 按日期排序,包括空值
sorted_dates = sorted(dates, key=convert_to_date)
print(sorted_dates)
运行以上代码,输出结果为:
['', '2022-01-01', '2022-01-03', '2022-01-05', '2022-01-07']
通过指定 key
参数为 convert_to_date
函数,sorted()
函数会调用该函数来将字符串转换为日期对象进行比较和排序。空值会被视为最小值排在最前面。
请注意,以上示例假设日期字符串的格式为 YYYY-MM-DD
,如果实际格式不同,请根据实际情况调整 convert_to_date
函数中的日期格式。