点击上方蓝字 ● 关注捷创源科技


在开发工作中,我们经常需要用到日期与时间,如:
1.作为日志信息的内容输出
2.计算某个功能的执行时间
3.用日期命名一个日志文件的名称
4.记录或展示某文章的发布或修改时间
5.其他
Python中提供了多个用于对日期和时间进行操作的内置模块:time模块、datetime模块和calendar模块。其中time模块是通过调用C库实现的,所以有些方法在某些平台上可能无法调用,但是其提供的大部分接口与C标准库time.h基本一致。time模块相比,datetime模块提供的接口更直观、易用,功能也更加强大。
这里我们只讲述datetime模块
datetime模块
datetime模块提供了处理日期和时间的类,既有简单的方式,又有复杂的方式。它虽然支持日期和时间算法,但其实现的重点是为输出格式化和操作提供高效的属性提取功能。
一、计算时间差
"""python主文件"""# -*- coding: utf-8 -*-import time"""=====================================主函数====================================="""if __name__ == '__main__':# 获取当前开始的日期和时间,例:2022-02-05 14:20:36strStartDateTime = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())# format_time to struct_time to timestampstartSeconds = time.mktime(time.strptime(strStartDateTime, "%Y-%m-%d %X"))# 延时,做其他任务time.sleep(15)# 获取当前结束的日期和时间,例:2022-02-05 14:20:50strEndDateTime = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())# format_time to struct_time to timestampendSeconds = time.mktime(time.strptime(strEndDateTime, "%Y-%m-%d %X"))# 打印时间差# print(f'耗费时间:{endSeconds - startSeconds}秒')print(f'耗费时间:{(endSeconds - startSeconds):.0f}秒')
运行结果:

二、计算2个日期相差的天数
"""python主文件"""# -*- coding: utf-8 -*-import datetimeimport time"""=====================================主函数====================================="""if __name__ == '__main__':now = datetime.datetime.now()before = datetime.datetime(2022, 2, 16, 17, 7, 55, 466176)print(now)print(before)# 测试计算2个日期相差天数print(now.__sub__(before).days)
运行结果:

关注上面微信公众号“捷创源科技”,每天获取技术干货,让我们一起成长!
文章转载自捷创源科技,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




