Python中time模块的初步认识

不羁的心 提交于 2020-01-28 19:32:06

1、UTC(世界协调时间):格林尼治天文时间,世界标准时间,在中国来说是UTC+8
2、DST(夏令时):是一种节约能源而人为规定时间制度,在夏季调快1个小时

时间的表示形式:

1、时间戳

       以整型或浮点型表示时间的一个以秒为单位的时间间隔。这个时间间隔的基础值是从1970年1月1日零点开始算起

2、元组

       一种Python的数据纳构表示,这个元组有9个整型内容

属性 含义  
tm_year  
tm_mon 1到12
tm_mday 1到31
tm_hour 小时 0到23
tm_min 分钟 0到59
tm_sec 0到61(60或61是闰秒)
tm_wday 一周的第几日 0到6(0是周一)
tm_yday 一年的第几日 1到366
tm_isdst 夏令时 0,1,-1

注:tm_isdst中的0表示正常时间,1表示正常时间,-1表示时间不确定是否为夏令时。
       一般用0比较多,-1是我们人为规定时间的时候才是-1

3、格式化字符串

符号 含义
%a 本地(local)简化星期名称
%A 本地完整星期名称
%b 本地简化月份名称
%B 本地完整月份名称
%c 本地相应的日期和时间表示
%d 一个月中的第几天(01 - 31)
%H 一天中的第几个小时(24小时制,00 - 23)
%I 一天中的第几个小时(12小时制,01 - 12)
%j 一年中的第几天(001 - 366)
%m 月份(01一12)
%M 分钟数 (00 - 59)
%p 本地AM或者PM的等价符
%S 秒(01-61)
%U 一年中的星期数。(00- 53)星期天是一 个星期的开始,第一个星期天之前的所有天数都放在第0周
%w 一个星期中的第几天(0一6,0是星期天)
%W 和%U基本相同, 不同的是%W以星期一为一个星期的开始。
%x 本地相应日期
%X 本地相应时间
%y 去掉世纪的年份 (00 - 99)
%Y 完整的年
%Z 时区的名字(如果不存在为空字符)
%% ‘%’字符

注:一定要严格区分大小写

函数详解

1、time()函数

      time()函数用于返回当前时间的时间戳(从1970年1月1号零点零分零秒到现在的时间戳),浮点数形式,不需要参数

      time()函数的语法:

            time.time()

import time

print("当前时间的时间的时间戳:%f" % time.time())

      运行结果:

当前时间的时间的时间戳:1580118533.995739

2、gmtime()函数

      gmtime()函数函数用于将时间戳作为UTC时间元组

      gmtime()函数的语法:

            time.gmtime(x)

      参数x - - 本地时间戳time.time(),也可以不加参数,不加参数默认为本地时间

      type类型为time.struct_time

import time

print(time.gmtime())

      运行结果:

time.struct_time(tm_year=2020, tm_mon=1, tm_mday=27, tm_hour=10, tm_min=2, tm_sec=29, tm_wday=0, tm_yday=27, tm_isdst=0)

3、localtime()函数

      localtime()函数函数用于将时间戳作为本地时间元组

      localtime()函数的语法:

            time.localtime(x)

      参数x - - 本地时间戳time.time(),也可以不加参数,不加参数默认为本地时间

      type类型为time.struct_time

import time

print(time.localtime())

      运行结果:

time.struct_time(tm_year=2020, tm_mon=1, tm_mday=27, tm_hour=18, tm_min=9, tm_sec=58, tm_wday=0, tm_yday=27, tm_isdst=0)

4、mktime()函数

      mktime()函数函数用于将本地时间元组转成时间截

      mktime()函数的语法:

            time.mktime(x)

      参数x - - 本地时间元组time.localtime()或者time.gmtime,或者全满 9 个元素的元组

      type类型为float

import time

x = (2019, 10, 2, 10, 40, 20, 3, 155, -1)
print(time.mktime(x))
print(time.mktime(time.localtime()))

      运行结果:

1569984020.0
1580120419.0

5、asctime()函数

      asctime()函数函数用于将时间元组转为字符串

      asctime()函数的语法:

            time.asctime(x)

      参数x - - 本地时间元组time.localtime()或者time.gmtime,或者全满 9 个元素的元组

      type类型为str

import time

x = (2019, 10, 2, 10, 40, 20, 3, 155, -1)
print(time.asctime(x))
print(time.asctime(time.localtime()))

      运行结果:

Thu Oct  2 10:40:20 2019
Mon Jan 27 18:23:10 2020

6、ctime()函数

      ctime()函数函数用于将时间戳转为字符串

      ctime()函数的语法:

            time.ctime(x)

      参数x - - 本地时间戳time.time(),或者自己拟定的时间戳,若未给出参数,则默认为time.time()

      type类型为str

import time

x = (1569984020.0)
print(time.ctime(x))
print(time.ctime(time.time()))

      运行结果:

Wed Oct  2 10:40:20 2019
Mon Jan 27 18:27:39 2020

7、strftime()函数

      strftime()函数用于接收时间元组,并返回以可读字符串表示的当地时间。格式由参数决定

      strftime()函数的语法:

            time.strftime(" %Y-%m-%d %H:%M:%S ",x)

      参数1 - - 格式化给定时间的指令,这个可以自己拟定,只要是用strptime合法的格式化符号
      参数2 - - 被格式化以秒为单位的时间,时间元组,为一个可选参数。如果没有,默认为当前时间

      type类型为str

import time

x = "%Y-%m-%d %H:%M:%S"
print(time.strftime(x))
print(time.strftime(x, time.localtime()))

      运行结果:

2020-01-27 18:39:40
2020-01-27 18:39:40

8、strptime()函数

      strptime()函数用于根据给定的格式把一个时间字符串解析为时间元组

      strptime()函数的语法:

            time.strptime(x," %Y-%m-%d %H:%M:%S ")

      参数1 - - 时间字符串
      参数2 - - 格式化字符串的格式

      type类型为time.struct_time

import time

print(time.strptime("2020-01-27", "%Y-%m-%d"))

      运行结果:

time.struct_time(tm_year=2020, tm_mon=1, tm_mday=27, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=0, tm_yday=27, tm_isdst=-1)

9、sleep()函数

      sleep()函数用于延迟一个时间,整型或者浮点型

      sleep()函数的语法:

            time.sleep(x)

      参数x - - 暂停执行的秒数

import time

time.sleep(2)

      运行结果:

      就是暂停了2秒,然后程序执行完毕

9、clock()函数

      clock()函数用于返回当前程序的cpu执行时间
      unix系统始终返回全部的运行时间
      windows从第二次开始,都是以第一个调用此函数的开始间隔作为基数

      clock()函数的语法:

            time.clock()
            print(“测试的语句”)
            time.clock()

import time

time.clock()
time.sleep(2)
y1 = time.clock()
print(y1)
time.sleep(2)
y2 = time.clock()
print(y2)

      运行结果:

2.0004032
4.0008972

      始终是以第一个time.clock()作为对齐标准
      time.clock已在Python 3.3中弃用,将从Python 3.8中删除:使用time.perf_counter或time.process_time代替

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!