python 从日期范围中获取季度日期。

问题描述 投票:0回答:1

python 从日期范围中获取季度日期。

例如:

start date = 01/04/2020
end date = 01/04/2021

这里我需要从这个日期范围中获取第四纪的日期。

python python-3.x pandas python-datetime python-dateutil
1个回答
-2
投票

使用纯Python。

import datetime

start_date_str = "01/04/2020"
end_date_str = "01/04/2021"

start_date = datetime.datetime.strptime(start_date_str, "%d/%m/%Y").date()
end_date = datetime.datetime.strptime(end_date_str, "%d/%m/%Y").date()

print(f"Quarters within {start_date_str} and {end_date_str}:")
start_of_quarter = start_date
while True:
    far_future = start_of_quarter + datetime.timedelta(days=93)
    start_of_next_quarter = far_future.replace(day=1)
    end_of_quarter = start_of_next_quarter - datetime.timedelta(days=1)
    if end_of_quarter > end_date:
        break
    print(f"\t{start_of_quarter:%d/%m/%Y} - {end_of_quarter:%d/%m/%Y}")
    start_of_quarter = start_of_next_quarter

2
投票

试试

start_date = "01/04/2020"
end_date = "01/04/2021"
pd.date_range(start_date, end_date, freq='Q')

DatetimeIndex(['2020-03-31', '2020-06-30', '2020-09-30', '2020-12-31'], dtype='datetime64[ns]', freq='Q-DEC')
© www.soinside.com 2019 - 2024. All rights reserved.