python遍历一个日期范围
from datetime import date, timedelta from datetime import date f_date = date(2014, 7, 2) l_date = date(2014, 7, 11) delta = l_date - f_date print(delta.days) print(delta) print("*" * 100)
import datetime start = '2022-10-01' end = '2022-10-11' datestart = datetime.datetime.strptime(start, '%Y-%m-%d') dateend = datetime.datetime.strptime(end, '%Y-%m-%d') print(datestart) print(dateend) print("*" * 100) while datestart < dateend: print("打印语句写在前面:",datestart) datestart += datetime.timedelta(days=1) print("打印语句写在后面:",datestart.strftime('%Y%m%d'))

第二种写法
from datetime import date, timedelta def daterange(start_date, end_date): for n in range(int((end_date - start_date).days)): yield start_date + timedelta(n) start_date = date(2022, 10, 1) end_date = date(2022, 10, 22) for single_date in daterange(start_date, end_date): print(single_date.strftime("%Y-%m-%d"))

import datetime begin = datetime.date(2022, 10, 1) end = datetime.date(2022, 10, 10) for d in range((end - begin).days + 1): day = begin + datetime.timedelta(d) print(day)

import datetime begin = datetime.date(2022, 10, 1) end = datetime.date(2022, 10, 12) d = begin delta = datetime.timedelta(1) while d <= end: print(d) d += delta

import datetime as dt length = 10 begin = dt.date(2022,10,11) delta = dt.timedelta(days=1) d = begin ticks = [] for _ in range(length): ticks.append(d.strftime("%Y-%m-%d")) d += delta print(ticks)

import datetime t=datetime.datetime.now() #当前日期 d1 =t.strftime('%Y-%m-%d %H:%M:%S') #7天后 d2=(t+datetime.timedelta(days=7)).strftime("%Y-%m-%d %H:%M:%S") # +变成-,就是之前多少天日期 print(d1) print(d2) #任意时间 for i in range(10): d3=(t+datetime.timedelta(days=i)).strftime("%Y-%m-%d %H:%M:%S") print(d3)

import datetime def dayin(dt): print("今天是:",dt) t=datetime.datetime.now() #当前日期 d1 =t.strftime('%Y-%m-%d %H:%M:%S') #7天后 d2=(t+datetime.timedelta(days=7)).strftime("%Y-%m-%d %H:%M:%S") # +变成-,就是之前多少天日期 print(d1) print(d2) for i in range(10): d3=(t+datetime.timedelta(days=i)).strftime("%Y-%m-%d %H:%M:%S") #print(d3) dayin(d3)

浙公网安备 33010602011771号