不太满足,如果日期是20210103到20211212 我想拆分成日期是 20210103-20210331、20210401-20210630、20210701-20210930、20211001-20211212
时间: 2024-01-07 09:04:50 浏览: 23
明白了,如果你想将日期范围拆分成指定的季度,你可以使用下面的:
```python
import
def split_into_quarters(start_date, end_date):
quarters = []
start = datetime.datetime.strptime(start_date, '%Y%m%d')
end = datetime.datetime.strptime(end_date, '%Y%m%d')
while start <= end:
quarter_start = start.date()
quarter_end = min(start + datetime.timedelta(days=89), end).date()
quarters.append((quarter_start, quarter_end))
start += datetime.timedelta(days=90)
return quarters
# 示例用法
start_date = '20210103'
end_date = '20211212'
quarters = split_into_quarters(start_date, end_date)
for quarter in quarters:
print(quarter)
```
在这个函数中,我们首先将输入的日期字符串转换为 `datetime` 对象。然后,我们利用一个循环,每次增加90天,来分割日期范围。在每次循环中,我们计算出当前季度的起始日期和结束日期,并将它们添加到一个列表中。最后,返回这个列表。
注意:这里假设一个季度有90天。如果你的需求不同(例如,每个季度有91天),你可以相应地调整代码中的天数。
希望这次的回答满足了你的要求!如果还有其他问题,请随时提问。