小编给大家分享一下python如何使用time模块,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
创新互联是一家集网站建设,宝山企业网站建设,宝山品牌网站建设,网站定制,宝山网站建设报价,网络营销,网络优化,宝山网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
时间处理是工作中常用的操作,下面我们介绍time模块常用的操作,开始之前我们先来看常见问题:
1:如何获取当前时间?
2:如何将时间转成字符串?
3:如何将字符串转成时间,可以获取对应的年月日时分秒?
4:如何将时间转成自己想要的格式?
掌握time模块,以上问题轻松解决。
import time
time模块那么多方法,如何区分?
根据时间格式划分为:
a)时间戳
b)struct_time格式(时间格式,可以轻松获取年月日,时分秒各个值)
c)字符串时间(可读性好)
下面逐一详解(以下操作在jupyter,python3.x版本操作)
跟着感觉走:
什么是时间戳?就是一个大的浮点数,计算机用来记录时间用的,大概好像是1970年的某年月开始的。
获取时间戳正确姿势:
import time t=time.time() t
结果:
1582968461.3394606
获取时间戳,对我们来说意义不大,怎么获取对应的年与日时分秒?
struct_time是一个对象,类似元组,主要包含时间信息
属性 | 说明 |
---|---|
tm_year | 年 |
tm_mon | 月[01,31] |
tm_mday | 日 |
tm_hour | 小时 [ 00,12] |
tm_min | 分钟 [00,59] |
tm_sec | 秒 [00,59] |
tm_wday | 星期 [0,6] |
tm_yday | 从每年的1月1日开始的天数 |
tm_isdst | 夏令时(暂时忽略) |
有了这个结构,获取时间太easy,如何获取?
#获取当前时间 st = time.localtime() #获取年 print(st.tm_year) #获取小时 print(st.tm_hour) #时间戳转struct_time t=1582968461 print(time.localtime(t))
输出结果:
2020 17 time.struct_time(tm_year=2020, tm_mon=2, tm_mday=29, tm_hour=17, tm_min=27, tm_sec=41, tm_wday=5, tm_yday=60, tm_isdst=0)
time.ctime(seconds):将时间戳转成可读字符串
#获取当前时间 print(time.ctime()) #时间戳转字符串 t=1582968461 print(time.ctime(t))
输出结果:
Sat Feb 29 17:46:18 2020 Sat Feb 29 17:27:41 2020
主要下面几个操作:
方法 | 说明 |
---|---|
time.mktime(tuple) | struct_time转时间戳 |
time.asctime([tuple]) | struct_time转时间日期字符串 |
time.strftime(format[, tuple]) | struct_time转指定时间格式字符串 |
先来看前两个操作:
#获取当前时间 st = time.localtime() #struct_time转时间戳 print(time.mktime(st)) #struct_time转字符串 print(time.asctime(st))
输出结果:
1582974399.0 Sat Feb 29 19:06:39 2020
如何将struct_time转自定义格式字符串?
time.strftime(format[, tuple]):format为指定格式,tuple为struct_time对象
format格式可以通过help(time.strftime)查看,主要格式如下:
格式 | 说明 |
---|---|
%Y | 年份:[xxxx] |
%y | 年份:[xx],不带世纪 |
%m | 月份:[01,12] |
%d | 日:[01,,3] |
%H | 小时:[00,23] |
%M | 分:[00,59] |
%S | 秒:[00,59] |
%x | 日期:[月/日/年份] |
%X | 时间:[时:分:秒] |
例子:
st = time.localtime() #年-月-日 print(time.strftime('%Y-%m-%d', st)) #时-分-秒 print(time.strftime('%H-%M-%S',st)) #年-月-日 时:分:秒 print(time.strftime('%Y-%m-%d %H:%M:%S', st))
结果:
2020-02-29 19-19-31 2020-02-29 19:19:31
比如将"2020-02-29 19:19:31"转成struct_time或者时间戳如何操作?
strptime(string, format),与strftime相反,具体操作:
s = '2020-02-29 19:19:31' st = time.strptime(s,'%Y-%m-%d %H:%M:%S') print(st)
输出结果:
time.struct_time(tm_year=2020, tm_mon=2, tm_mday=29, tm_hour=19, tm_min=19, tm_sec=31, tm_wday=5, tm_yday=60, tm_isdst=-1)
以上就是时间转换主要方法。
#获取当前时间错 t = time.time() print(t) #转成struct_time st = time.localtime(t) print(st) #st转自定义格式字符串 s = time.strftime('%Y-%m-%d %H:%M:%S', st) print(s)
输出结果:
1582975571.0656374 time.struct_time(tm_year=2020, tm_mon=2, tm_mday=29, tm_hour=19, tm_min=26, tm_sec=11, tm_wday=5, tm_yday=60, tm_isdst=0) 2020-02-29 19:26:11
s = '2020-02-29 19:26:11' #字符串转struct_time st = time.strptime(s,'%Y-%m-%d %H:%M:%S') print(st) #struct_time转时间戳 t = time.mktime(st) print(t)
结果:
time.struct_time(tm_year=2020, tm_mon=2, tm_mday=29, tm_hour=19, tm_min=26, tm_sec=11, tm_wday=5, tm_yday=60, tm_isdst=-1) 1582975571.0
记住这几个操作,能够满足大部分需求。
以上是“python如何使用time模块”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!