Python遍历时间段里的时间点

前几日遇到一个Python编程题,需要遍历从开始时间点到结束时间点,以秒(s)为单位的所有时间点。

比如开始时间为“2017年11月11日1点1分1秒”,结束时间为“2017年11月11日1点1分22秒”
操作主要依靠python的datetime标准库

# 导入datetime库
import datetime

# 创建开始时间点和结束时间点
d1 = datetime.datetime(2017,11,11,1,1,1)
d2 = datetime.datetime(2014,11,11,1,1,22)

# 获取时间间隔
delta = d2 - d1

# 遍历获得每一个时间点
for i in range(delta.seconds+1):
    print(d1 + datetime.timedelta(seconds=i))

当两个datetime.datetime格式的数据相减的时候会产生一个datetime.timedelta格式的间隔数据,这种类型的数据可以返回间隔秒,分,小时,天等为单位的间隔。

我们这里是用的秒为单位,所以先返回时间间隔数,再在遍历的时候加入以秒为单位的时间间隔。

输出结果如下图所示:

输出展示.png

ps:补充 time转化为datetime的方法

s1 = '20140515'

a = time.strptime(s1,'%Y%m%d')
print(a[:6])

d = datetime(*a[:6])

print(d)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容