产生指定时间区间序列、按指定单位变化时间 python实现

示例1:给定起始日期和结束日期,如何得到中间的时间序列

import datetime
def dateRange(beginDate, endDate):
    dates = []
    dt = datetime.datetime.strptime(beginDate, "%Y%m%d%H")
    date = beginDate[:]
    while date <= endDate:
        dates.append(date)
        dt = dt + datetime.timedelta(hours=1)
        date = dt.strftime("%Y%m%d%H")
    return dates


if __name__ == '__main__':
    print dateRange("2016010100", "2016040124")

具体日期格式可以自己定义;

示例2:比当前时间多加1天

import datetime
def dateRange(beginDate, endDate):
    dates = []
    dt = datetime.datetime.strptime(beginDate, "%Y%m%d%H")
    date = beginDate[:]
    while date <= endDate:
        dates.append(date)
        dt = dt + datetime.timedelta(1)  #注意这里的变化
        date = dt.strftime("%Y%m%d%H")
    return dates


if __name__ == '__main__':
    print dateRange("2016010100", "2016040124")

示例3:比当前时间多加1小时

import datetime
def dateRange(beginDate, endDate):
    dates = []
    dt = datetime.datetime.strptime(beginDate, "%Y%m%d%H")
    date = beginDate[:]
    while date <= endDate:
        dates.append(date)
        dt = dt + datetime.timedelta(hours=1) #注意这里的变化
        date = dt.strftime("%Y%m%d%H")
    return dates


if __name__ == '__main__':
    print dateRange("2016010100", "2016040124")

示例4:比当前时间多加1分钟

import datetime
def dateRange(beginDate, endDate):
dates = []
dt = datetime.datetime.strptime(beginDate, "%Y-%m-%d %H:%M:%S")
date = beginDate[:]
while date <= endDate:
dates.append(date)
dt = dt + datetime.timedelta(minutes=30)
date = dt.strftime("%Y-%m-%d %H:%M:%S")
return dates
if __name__ == '__main__': 

date=dateRange("2007-02-20 00:00:00", "2007-02-20 23:59:15")
print(date)
原文地址:https://www.cnblogs.com/zhibei/p/9584806.html