python 获取一段时间内,每个月的第一天和最后一天

403 阅读1分钟

获取一段时间内,每个月的月初和月末, 业务中用到了,记录一下,给需要的人参考一下~ 主要是用了pandas 的date_range方法

import pandas as pd

beginDate = '2018-08-01'
endDate = '2019-03-31'


date_index = pd.date_range(beginDate, endDate)
days = [pd.Timestamp(x).strftime("%Y-%m-%d") for x in date_index.values]

tmp = []
for index , v in enumerate(days):
    if index == len(days)-1:
        tmp.append(days[index])
    if index == 0:
        tmp.append(days[0])
    else:
        _ = v.split('-')[2]
        if _ == '01':
            tmp.append(days[index-1])
            tmp.append(days[index])

print(tmp)
for i in range(len(tmp)//2):
    print(tmp[i * 2] , tmp[i * 2 + 1])

在这里插入图片描述