python之time模块

Posted valorchang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python之time模块相关的知识,希望对你有一定的参考价值。

1、time.time()方法

  返回当前时间的时间戳(1970纪元后经过的浮点秒数)。

  语法:

1
time.time()

  应用:

1
2
3
4
import time
print(time.time())
 
#res: 1523418594.7086408

2、time.localtime()方法 

  time.localtime()函数类似gmtime(),作用是格式化时间戳为本地时间。如果sec参数未输入,则以当前时间为转换时间。DST(Daylight Savings Time) flag(-1,0,or 1)是否为夏令时。

  语法:

1
time.localtime([sec])

  应用:

1
2
3
4
5
6
7
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个字符的字符串

  语法:

1
time.asctime([t]) # t -- 9个元素的元组通过gmtime()或localtime()返回时间值

  应用:

1
2
3
4
5
import time
= 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()为参数。

  语法:

1
time.ctime([sec]) #sec -- 需要转换为字符串时间的秒数

  应用:

1
2
3
4
5
6
7
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决定。、

  语法:

1
time.strftime(format[,t])

  参数说明:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
参数:
    format -- 格式化字符串。
    -- 可选的参数t是一个struct_time对象。
返回值:
    返回以可读字符串表示的当地时间。
说明:
    python中时间日期格式化符号:
    %y 两位数的年份表示(00-99)
    %Y 四位数的年份表示(000-9999)
    %m 月份(01-12)
    %d 月内的一天(0-31)
    %24小时制小时数(0-23)
    %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
2
3
4
5
6
7
8
9
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指定秒数,表示进程挂起的时间。

  语法:

1
time.sleep(t) # t -- 推迟执行的秒数

  应用:

1
2
3
4
5
6
7
8
9
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。

  语法:

1
time.mktime(t) # t -- 结构化的时间或者完整的9位元组元素。

  应用:

1
2
3
4
5
6
7
8
9
10
= (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模块中定义的表示时间的对象。)

  该函数没有任何返回值。

  语法:

1
time.gmtime([sec]) # sec -- 转换为time.struct_time类型的对象的秒数

  应用:

1
2
3
4
5
6
7
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()为基础,它比毫秒表示更为精确)

  语法:

1
time.clock()

  返回值:  

  该函数有两个功能,
  在第一次调用的时候,返回的是程序运行的实际时间;
  以第二次之后的调用,返回的是自第一次调用后,到这次调用的时间间隔
  在win32系统下,这个函数返回的是真实时间(wall time),而在Unix/Linux下返回的是CPU时间。

  应用:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
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

以上是关于python之time模块的主要内容,如果未能解决你的问题,请参考以下文章

python模块之time模块

Python模块之time

python 模块之-time

python常用模块之time&datetime模块

python之time模块

Python之Time模块