>>> import time >>> dir(time) ['_STRUCT_TM_ITEMS', '__doc__', '__loader__', '__name__', '__package__', '__spec__', 'altzone', 'asctime', 'clock', 'ctime', 'daylight', 'get_clock_info', 'gmtime', 'localtime', 'mktime', 'monotonic', 'perf_counter', 'process_time', 'sleep', 'strftime', 'strptime', 'struct_time', 'time', 'timezone', 'tzname']
1.asctime()
asctime([tuple]) -> string 将一个struct_time(默认为当时时间),转换成字符串
将时间元组转换为字符串,例如 '星期六06月16日16:26:11' 当时间元组不存在时,localtime()返回的当前时间用来
1 import time 2 print(time.asctime()) 3 4 #result:Thu Nov 1 11:15:27 2018
2.clock()
clock() -> floating point number
该函数有两个功能,
在第一次调用的时候,返回的是程序运行的实际时间;
以第二次之后的调用,返回的是自第一次调用后,到这次调用的时间间隔
1 import time 2 3 time.sleep(1) 4 print("clock1:%s" % time.clock()) #其中第一个clock输出的是程序运行时间 5 time.sleep(1) 6 print("clock2:%s" % time.clock()) #第二、三个clock输出的都是与第一个clock的时间间隔 7 time.sleep(1) 8 print("clock3:%s" % time.clock()) 9 10 #clock1:2.8510172429522855e-07 11 #clock2:1.0001240192500684 12 #clock3:2.002884659246419
3.sleep(...)
sleep(seconds) 线程推迟指定的时间运行,经过测试,单位为秒
4.ctime(...)
ctime(seconds) –> string 将一个时间戳(默认为当前时间)转换成一个时间字符串
1 import time 2 print(time.ctime()) 3 4 #result:Thu Nov 1 11:26:06 2018
5.gmtime(...)
gmtime([seconds]) -> (tm_year, tm_mon, tm_day, tm_hour, tm_min,tm_sec, tm_wday, tm_yday, tm_isdst)
将一个时间戳转换成一个UTC时区(0时区)的struct_time,如果seconds参数未输入,则以当前时间为转换标准
1 import time 2 print(time.gmtime()) 3 4 #result:time.struct_time(tm_year=2018, tm_mon=11, tm_mday=1, tm_hour=3, tm_min=27, tm_sec=53, tm_wday=3, tm_yday=305, tm_isdst=0)
6.localtime(...)
localtime([seconds]) -> (tm_year,tm_mon,tm_day,tm_hour,tm_min,tm_sec,tm_wday,tm_yday,tm_isdst)
将一个时间戳转换成一个当前时区的struct_time,如果seconds参数未输入,则以当前时间为转换标准
1 import time 2 print(time.localtime()) 3 4 #result:time.struct_time(tm_year=2018, tm_mon=11, tm_mday=1, tm_hour=3, tm_min=27, tm_sec=59, tm_wday=3, tm_yday=305, tm_isdst=0)
7.mktime(...)
mktime(tuple) -> floating point number
将一个以struct_time转换为时间戳
1 import time 2 print(time.mktime(time.localtime())) 3 4 #result:1541043031.0
8.strftime(...)
strftime(format[, tuple]) -> string
将指定的struct_time(默认为当前时间),根据指定的格式化字符串输出
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 当前时区的名称
%% %号本身
1 import time 2 print(time.strftime('%Y-%m-%d',time.localtime())) 3 4 #result:2018-11-01
9.strptime(...)
strptime(string, format) -> struct_time
将时间字符串根据指定的格式化符转换成数组形式的时间
例如:
2009-03-20 11:45:39 对应的格式化字符串为:%Y-%m-%d %H:%M:%S
Sat Mar 28 22:24:24 2009 对应的格式化字符串为:%a %b %d %H:%M:%S %Y
1 import time 2 print(time.strptime('2018-11-01',"%Y-%m-%d")) 3 print(time.strftime(""今年的第%j天",time.localtime()) 4 #result:time.struct_time(tm_year=2018, tm_mon=11, tm_mday=1, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=305, tm_isdst=-1) The day in year 305
10.time(...)
time() -> floating point number
返回当前时间的时间戳
1 import time 2 print(time.time()) 3 #result:1541043771.8730443