您的位置: 网站首页> 大家问> 当前文章
datetime模块获取时间,与字符串转化,格式化输出,计算时间差
老董2020-06-06183围观,134赞
编程中经常会对时间进行处理,python中datetime是比较常用的时间模块,常用于获取时间、时间类型与字符串转化、时间格式化输出、计算时间差等,本文简单总结下以备使用。
获取时间、时间类型与字符串转化及时间格式化输出,主要依靠datetime.datetime类;计算时间差主要依靠datetime.timedelta类。
1、获取时间
# -*- coding: utf-8 -*- import datetime now = datetime.datetime.now() print(type(now),now) t = datetime.datetime.today() print(t) print(t.year) print(t.month) print(t.day) print(t.hour) print(t.minute) print(t.second) print('本周是今年的第{}周'.format(t.strftime('%U'))) print('今天是{}.'.format(now.strftime('%A'))) print('今天是星期{}'.format(t.isoweekday())) #返回的1-7代表周一到周日;
<class 'datetime.datetime'> 2020-06-06 20:00:57.477423 2020-06-06 20:00:57.477424 2020 6 6 20 0 57 本周是今年的第22周 今天是Saturday. 今天是星期6
2、时间类型与字符串转化、格式化输出时间
# -*- coding: utf-8 -*- import datetime now = datetime.datetime.now() print(now) # 时间格式转字符串 print(now.strftime('%Y-%m-%d %H:%M:%S')) print(now.strftime('%Y-%m-%d %H:%M')) print(now.strftime('%Y-%m-%d %H')) print('----------') # 字符串转时间 t = datetime.datetime.strptime('2020-06-06 00:00:00', '%Y-%m-%d %H:%M:%S') print(t,type(t))
2020-06-06 20:55:44.554382 2020-06-06 20:55:44 2020-06-06 20:55 2020-06-06 20 ---------- 2020-06-06 00:00:00 <class 'datetime.datetime'>
3、计算时间差
# -*- coding: utf-8 -*- import datetime now = datetime.datetime.now() print(now) # 时间差 t1 = datetime.timedelta(days=1, hours=12) t2 = datetime.timedelta(days=1, hours=-12) print(now - t1) print(now - t2) days = datetime.timedelta(hours=240).days print('240小时有{}天'.format(days)) seconds = datetime.timedelta(days=10, hours=10).total_seconds() print('10天10小时有{}秒'.format(seconds))
2020-06-06 22:01:15.269153 2020-06-05 10:01:15.269153 2020-06-06 10:01:15.269153 240小时有10天 10天10小时有900000.0秒
很赞哦!
python编程网提示:转载请注明来源www.python66.com。
有宝贵意见可添加站长微信(底部),获取技术资料请到公众号(底部)。同行交流请加群
文章评论
-
datetime模块获取时间,与字符串转化,格式化输出,计算时间差文章写得不错,值得赞赏