python 根据 datetime.date(2024, 9, 25) 这个输入日期和 n 这个整数来获取该日期所在月的 1 日日期以及前 n-1 个月的1日的日期,最后以一个列表形式返回,列表中每个元素都是每月1日对应的字符串,形式为 ’20240101‘
时间: 2024-09-30 13:10:45 浏览: 28
python 输出上个月的月末日期实例
在Python中,你可以使用`datetime`模块来处理日期操作。首先,你需要创建一个函数,接受输入日期和整数n,然后生成并返回指定条件下的日期列表。下面是一个示例函数:
```python
from datetime import date
def get_monthly_ones(date_input, n):
def format_date(date_obj):
return f"{date_obj.year}{date_obj.month:02d}{date_obj.day:02d}"
target_date = date_input
result = [format_date(target_date)]
for _ in range(n - 1):
target_date -= relativedelta(months=1)
result.append(format_date(target_date))
return result
# 示例
input_date = date(2024, 9, 25)
num_months_back = 6
result_list = get_monthly_ones(input_date, num_months_back)
print(result_list)
```
这个函数首先计算给定日期所在的月份,然后利用`relativedelta`从这个日期开始向前推移n-1个月,并将每个月的第一天转换为所需的字符串格式。最后返回包含所有结果的列表。
阅读全文