time模块
-
import time
- time.sleep([n])#休眠n秒
-
time.time()
- 获取当前的时间戳
在python中,表示时间通常有三种方式
-
1.时间戳(timetamp):表示的是1970年1月1日00:00:00开始按秒计算的偏移量
-
2.格式化的时间字符串(format string)
-
2019-7-26 08:46:30
-
python中时间日期格式化符号:
%y 两位数的年份表示(00-99)
%Y 四位数的年份表示(000-9999)
%m 月份(01-12)
%d 月内中的一天(0-31)
%H 24小时制小时数(0-23)
%I 12小时制小时数(01-12)
%M 分钟数(00=59)
%S 秒(00-59)
%a 本地简化星期名称
%A 本地完整星期名称
%b 本地简化的月份名称
%B 本地完整的月份名称
%c 本地相应的日期表示和时间表示
%j 年内的一天(001-366)
%p 本地A.M.或P.M.的等价符
%U 一年中的星期数(00-53)星期天为星期的开始
%w 星期(0-6),星期天为星期的开始
%W 一年中的星期数(00-53)星期一为星期的开始
%x 本地相应的日期表示
%X 本地相应的时间表示
%Z 当前时区的名称
%% %号本身time.strftime("%Y-%m-%d %X")
‘2019-07-26 08:56:04’
-
-
3.结构化的时间(struct_time)—>元组,九个元素,分别是年,月,日,时,分,秒,一年的第几周,一年的第几天,夏令时。
time.localtime()
time.struct_time(tm_year=2019, tm_mon=7, tm_mday=26, tm_hour=8, tm_min=57, tm_sec=29, tm_wday=4, tm_yday=207, tm_isdst=0)
time模块的常用方法
方法 | 描述 |
---|---|
time.localtime([sec]) | 将一个时间戳转化为一个当前时区的结构化时间(struct_time)(若未提供参数,当前时间) |
time.gmtime([sec]) | 和localtime()类似,不同的是,其是将一个时间戳转化为UTC(0时区)的结构化时间 |
time.time() | 返回当前时间戳 |
time.mktime(t) | 将结构化时间转化为时间戳 |
time.sleep(sec) | 线程推迟指定的时间允许,单位是秒 |
time.asctime([t]) | 把表时间的元组或者struct_time表示为:“Sun July 26 09:06:35 2019";如未传参数,默认为time.localtime() |
time.ctime([t]) | 把一个时间戳转化为time.asctime()的形式。如果未传参数,默认time.time() |
time.strftime(format[,t]) | 把一个代表时间的元组/struct_time (localtime()和gmtime())转化为格式化的字符串,未传参数,默认为time.localtime() |
time.strptime() | 将结构化字符转化为struct_time形式 |
- 时间戳,计算机识别的
- 字符串时间,人类可以看的
- 结构化时间,对时间操作
时间戳和结构化时间的转化
now=time.time()
time.gmtime(now)
time.struct_time(tm_year=2019, tm_mon=7, tm_mday=26, tm_hour=1, tm_min=17, tm_sec=38, tm_wday=4, tm_yday=207, tm_isdst=0)
time.localtime(now)
time.struct_time(tm_year=2019, tm_mon=7, tm_mday=26, tm_hour=9, tm_min=17, tm_sec=38, tm_wday=4, tm_yday=207, tm_isdst=0)
结构化时间和时间戳的转化
- time.mktime(结构化时间)
tp_struct=time.localtime()
time.mktime(tp_struct)
1564104145.0
结构化时间到字符串时间的转化
-
time.strftime(format[,t])
-
>>> tp_struct=time.localtime() >>> time.strftime("%Y-%m-%d %X",tp_struct) '2019-07-26 09:26:20'
字符串时间到结构化时间的转化
time.strptime(字符串时间,字符串对应的格式)
>>> time.strptime("2019-7-26","%Y-%m-%d")
time.struct_time(tm_year=2019, tm_mon=7, tm_mday=26, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=4, tm_yday=207, tm_isdst=-1)
结构化时间和字符串时间的转化(国际化时间字符串)
- time.asctime(结构化时间)
>>> tp=time.localtime()
>>> time.asctime(tp)
'Fri Jul 26 09:49:12 2019'
时间戳和字符串的转化(国际化)
>>> time.ctime(time.time())
'Fri Jul 26 09:51:21 2019'
>>> time.ctime()
'Fri Jul 26 09:51:30 2019'
>>> time.ctime(time.time())
'Fri Jul 26 09:51:21 2019'
>>> time.ctime()
'Fri Jul 26 09:51:30 2019'