我正在尝试获取某个范围内的所有日期以制作日期列表:
当我于2017年1月9日xxx开始并于2017年1月11日结束时,我预计会有以下日期:
问题是我只得到
我错过了什么来获得第3次约会
def generate_index_date_list():
# format like "11/Jan/2017:11:11:11 +0200"
start_datetime_string = "09/Jan/2017:11:11:11 +0200"
end_datetime_string = "11/Jan/2017:11:11:11 +0200"
startdate = datetime.strptime(start_datetime_string.split(":")[0], "%d/%b/%Y").date()
enddate = datetime.strptime(end_datetime_string.split(":")[0], "%d/%b/%Y").date()
for single_date in daterange(startdate, enddate):
print single_date
def daterange(start_date, end_date):
for n in range(int((end_date - start_date).days)):
yield start_date + timedelta(n)
答案 0 :(得分:1)
你试过了吗?
def daterange(start_date, end_date):
for n in range(int((end_date - start_date).days) + 1):
yield start_date + timedelta(n)
Python range
生成的数字最多但不包括给定的数字。这就是为什么最后的日期没有被包括在内。