不使用额外的三方库,将"2024.02"处理为"2024.02.29",代码如下:
from datetime import datetime, timedelta
def complete_date(date_str):
try:
base_date = datetime.strptime(date_str, '%Y.%m').date()
if base_date.month==12:
last_day_of_month = datetime(year=base_date.year, month=base_date.month, day=31)
else:
last_day_of_month = datetime(year=base_date.year, month=base_date.month+1, day=1) - timedelta(days=1)
except ValueError:
return "Invalid date format. Please use 'YYYY.MM' format."
complete_date_str = last_day_of_month.strftime('%Y.%m.%d')
return complete_date_str
date_str = '2024.02'
print(complete_date(date_str))
最终的输出则为:2024.02.29