产生指定时间区间序列、按指定单位变化时间 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)

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM