93-time模块
目录
time模块一.time模块import time 1.1 时间戳时间戳(timestamp):时间戳表示从1970年1月1日00:00:00:开始按秒九三的时间偏移量 import time time_stamp = time.time() print(time_stamp,type(time_stamp)) 1.2 格式化时间格式化时间字符串(format string):格式化时间表示的是普通的字符串格式的时间 import time format_time = time.strftime("%Y-%m-%d %X") print(format_time,type(format_time)) # 2019-09-15 14:12:22 <class 'str'> 1.3 结构化时间结构化时间(struct_time):struct_time元祖共有九个元素,分别为(年,月,日,时,分,秒,一年中的第几周,一年中的第几天,夏令时) print(f'本地时区的struct_time:n{time.localtime()}') print(f'UTC时区的struct_time:n{time.gmtime()}') # 本地时区的struct_time: # time.struct_time(tm_year=2019,tm_mon=9,tm_mday=15,tm_hour=14,tm_min=21,tm_sec=6,tm_wday=6,tm_yday=258,tm_isdst=0) # UTC时区的struct_time: # time.struct_time(tm_year=2019,tm_hour=6,tm_isdst=0) #结构化时间的基准时间 print(time.localtime(0)) # time.struct_time(tm_year=1970,tm_mon=1,tm_mday=1,tm_hour=8,tm_min=0,tm_sec=0,tm_wday=3,tm_yday=1,tm_isdst=0) # 结构化时间的基准时间加上一年的时间 print(time.localtime(3600*24*365)) # time.struct_time(tm_year=1971,tm_wday=4,tm_isdst=0) 1.4 不同格式时间之间的转换如上图所示,我们总能通过某种方法在结构化时间-格式化时间-时间戳三者之间进行转换,下面我们将用代码展示如何通过这些方法转换时间格式。 结构化时间 now_time = time.localtime() print(now_time) # time.struct_time(tm_year=2019,tm_min=31,tm_sec=22,tm_isdst=0) 把结构化时间转换为时间戳格式 print(time.mktime(now_time)) # 1568529137.0 把结构化时间转换为格式化时间 # %Y年-%m月-%d天 %X时分秒=%H时:%M分:%S秒 print(time.strftime("%Y-%m-%d %X",now_time)) # 2019-09-15 14:33:12 把格式化时间化为结构化时间,它和strftime()是逆操作 print(time.strptime('2013-05-20 13:14:52','%Y-%m-%d %X')) time.struct_time(tm_year=2013,tm_mon=5,tm_mday=20,tm_hour=13,tm_min=14,tm_sec=52,tm_wday=0,tm_yday=140,tm_isdst=-1) 把结构化时间表示为这种形式:‘Sun Jun 20 23:21:05 1993‘。 print(time.asctime()) # Sun Sep 15 14:36:09 2019 如果没有参数,将会将time.localtime()作为参数传入。 print(time.asctime(time.localtime())) # Sun Sep 15 14:36:09 2019 把一个时间戳转化为time.asctime()的形式。 print(time.ctime()) # Sun Sep 15 14:36:09 2019 如果参数未给或者为None的时候,将会默认time.time()为参数。它的作用相当于 time.asctime(time.localtime(secs))。 print(time.ctime(time.time())) # Sun Sep 15 14:36:09 2019 1.5 其它用法推迟指定的时间运行,单位为秒 start = time.time() time.sleep(3) end = time.time() print(end-start) # 3.000171422958374 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |