python之time模块
1、time.time()方法
返回当前时间的时间戳(1970纪元后经过的浮点秒数)。
语法:
time.time()
应用:
import time print(time.time()) #res: 1523418594.7086408
2、time.localtime()方法
time.localtime()函数类似gmtime(),作用是格式化时间戳为本地时间。如果sec参数未输入,则以当前时间为转换时间。DST(Daylight Savings Time) flag(-1,0,or 1)是否为夏令时。
语法:
time.localtime([sec])
应用:
import time print(time.localtime()) print(time.localtime(time.time())) #res: #time.struct_time(tm_year=2018, tm_mon=4, tm_mday=11, tm_hour=12, tm_min=0, tm_sec=21, tm_wday=2, tm_yday=101, tm_isdst=0) #time.struct_time(tm_year=2018, tm_mon=4, tm_mday=11, tm_hour=12, tm_min=0, tm_sec=21, tm_wday=2, tm_yday=101, tm_isdst=0)
3、time asctime()方法
time asctime()函数接受时间元组并返回一个可读的形式为“Wed Apr 11 12:24:35 2018”的 24个字符的字符串
语法:
time.asctime([t]) # t -- 9个元素的元组通过gmtime()或localtime()返回时间值
应用:
import time
t = time.localtime()
print("time.asctime(t): %s" %time.asctime(t))
#res: time.asctime(t): Wed Apr 11 12:24:35 2018
4、time ctime()方法
time ctime()函数把一个时间戳(按秒计算的浮点数)转化成time.asctime()形式。如果参数未给或为None的时候,将会默认time.time()为参数。
语法:
time.ctime([sec]) #sec -- 需要转换为字符串时间的秒数
应用:
import time print(time.asctime()) print(time.ctime()) #res: #Wed Apr 11 12:31:58 2018 #Wed Apr 11 12:31:58 2018
5、time strftime()方法
time strftime()函数接收以时间元组,并返回以可读字符串表示的当地时间,格式由参数format决定。、
语法:
time.strftime(format[,t])
参数说明:
参数:
format -- 格式化字符串。
t -- 可选的参数t是一个struct_time对象。
返回值:
返回以可读字符串表示的当地时间。
说明:
python中时间日期格式化符号:
%y 两位数的年份表示(00-99)
%Y 四位数的年份表示(000-9999)
%m 月份(01-12)
%d 月内的一天(0-31)
%H 24小时制小时数(0-23)
%l 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 当前时区的名称
%% %号本身
应用:
import time
print(time.time())
print(time.localtime())
print(time.strftime("%b %d %Y %H:%M:%S",time.localtime(time.time())))
#res:
#1523427407.9530156
#time.struct_time(tm_year=2018, tm_mon=4, tm_mday=11, tm_hour=14, tm_min=16, tm_sec=47, tm_wday=2, tm_yday=101, tm_isdst=0)
#Apr 11 2018 14:16:47
6、time sleep()方法
time sleep()函数推迟调用线程的运行,可通过sec指定秒数,表示进程挂起的时间。
语法:
time.sleep(t) # t -- 推迟执行的秒数
应用:
import time
print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())))
# 暂停一秒
time.sleep(1)
print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())))
#res:
#2018-04-11 14:31:53
#2018-04-11 14:31:54
7、time mktime()方法
time mktime()函数执行与gmtime(),localtime()相反的操作,它接收的struct_time对象为参数,返回用秒数来表示时间的浮点值
如果输入的值不是一个合法的时间,将触发OverflowError 或ValueError。
语法:
time.mktime(t) # t -- 结构化的时间或者完整的9位元组元素。
应用:
t = (2018,4,11,14,12,20,0,0,0) secs = time.mktime(t) print(secs) print(time.localtime(secs)) print(time.asctime(time.localtime(secs))) #res: #1523427140.0 #time.struct_time(tm_year=2018, tm_mon=4, tm_mday=11, tm_hour=14, tm_min=12, tm_sec=20, tm_wday=2, tm_yday=101, tm_isdst=0) #Wed Apr 11 14:12:20 2018
8、time gmtime()方法
time gmtime()函数将一个时间戳转换为UTC时区(0时区)的struct_time,可选的参数sec表示从1970-1-1以来的秒数。其默认值是time.time(),函数返回time.struct_time类型的对象。(struct_time是在time模块中定义的表示时间的对象。)
该函数没有任何返回值。
语法:
time.gmtime([sec]) # sec -- 转换为time.struct_time类型的对象的秒数
应用:
import time print(time.localtime()) print(time.gmtime()) #res: #time.struct_time(tm_year=2018, tm_mon=4, tm_mday=11, tm_hour=14, tm_min=48, tm_sec=9, tm_wday=2, tm_yday=101, tm_isdst=0) #time.struct_time(tm_year=2018, tm_mon=4, tm_mday=11, tm_hour=6, tm_min=48, tm_sec=9, tm_wday=2, tm_yday=101, tm_isdst=0)
9、time clock()方法
time clock() 函数以浮点数计算的秒数返回当前的CPU时间。用来衡量不同程序的耗时,比time.time()更有用。
这个需要注意,在不同的系统上含义不同。在UNIX系统上,它返回的是"进程时间",它是用秒表示的浮点数(时间戳)。而在WINDOWS中,第一次调用,返回的是进程运行的实际时间。而第二次之后的调用是自第一次调用以后到现在的运行时间。(实际上是以WIN32上QueryPerformanceCounter()为基础,它比毫秒表示更为精确)
语法:
time.clock()
返回值:
该函数有两个功能,
在第一次调用的时候,返回的是程序运行的实际时间;
以第二次之后的调用,返回的是自第一次调用后,到这次调用的时间间隔
在win32系统下,这个函数返回的是真实时间(wall time),而在Unix/Linux下返回的是CPU时间。
应用:
import time
def procedure():
time.sleep(2.5)
# time.clock
t0 = time.clock()
print(t0) # 0.0
procedure()
print(time.clock()) # 2.5000254293029536
print (time.clock() - t0) # 2.500084138566149
# time.time
t0 = time.time()
print(t0) # 1523431909.8959956
procedure()
print(time.time()) # 1523431912.396053
print (time.time() - t0) # 2.500558614730835

浙公网安备 33010602011771号