python 获取指定范围所有日期
方法有很多,这不是唯一的答案。可以根据自己的需要进行修改,代码如下:
import datetime
def gen_dates(b_date, days):
day = datetime.timedelta(days=1)
for i in range(days):
yield b_date + day * i
def get_date_list(start=None, end=None):
if start is None:
start = datetime.datetime.strptime('2018-02-02', '%Y-%m-%d')
else:
start = datetime.datetime.strptime(start, '%Y-%m-%d')
if end is None:
end = datetime.datetime.now()
data = []
for d in gen_dates(start, (end - start).days):
m = datetime.datetime.strftime(d, '%Y-%m-%d')
data.append(m) # 如果你想添加的为日期类型 m改为 d即可
print(data, data.__len__(), sep='\n')
get_date_list(start='2020-02-02', end=None)