Python time函数学习(三)

简介

在数据处理当中,经常会碰到处理时间的问题。比如:在序列预测的过程中,需要通过学习一段时间的数据,去预测未来一段时间的结果。这时候就要用到时间(time、datetimecalendar)模块,今天介绍时间模块中的time模块。

一、time模块

在Python中有三种表示时间到方式:

  a、timestamp时间戳,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量

  b、struct_time时间元组,共有九个元素组。

  c、format time 格式化时间,已格式化的结构使时间更具可读性。包括自定义格式和固定格式。

其中格式化时间中每个字符的含义如下

符号描述
%a 简化星期名称
%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 时区的名字(如果不存在为空字符)
%% ‘%’字符

在元组中会有9项参数,如下表所示:

关键字描述
tm_year
tm_mon 月(1-12)
tm_mday 日(1-31)
tm_hour 时(0-23)
tm_min 分(0-59)
tm_sec 秒(0-61),闰年多两秒
tm_wday 周一-周日(0-6)
tm_yday 一年中第几天(1-366)
tm_isdst 是否夏令时(1:是;0:不是;-1:未知;默认 -1)

 这里介绍一些常用命令:

1、time.time()

描述:该函数返回当前时间到时间戳,也就是距离1970年1月1日00:00:00到差值。

代码如下:

time.time()

#1563030732.796513

 2、time.localtime()

描述:该函数能将一个时间戳转换成元祖的形式,如果没有指定时间戳,默认使用当前时间的时间戳。需要注意的是返回的时间是当地时间。

代码如下:

time.localtime(1563030732.796513)

#time.struct_time(tm_year=2019, tm_mon=7, tm_mday=13, tm_hour=23, tm_min=12, tm_sec=12, tm_wday=5, tm_yday=194, tm_isdst=0)

time.localtime()

#time.struct_time(tm_year=2019, tm_mon=7, tm_mday=13, tm_hour=23, tm_min=16, tm_sec=41, tm_wday=5, tm_yday=194, tm_isdst=0)

3、time.gmtime()

描述:该函数和localtime()的功能一样,只是它返回的时间是格林威治天文时间(UTC),也就是世界标准时间。中国时间为UTF+8

代码如下:

time.gmtime()

#time.struct_time(tm_year=2019, tm_mon=7, tm_mday=13, tm_hour=15, tm_min=19, tm_sec=10, tm_wday=5, tm_yday=194, tm_isdst=0)

4、time.mktime()

描述:该函数将一个元祖转换成时间戳。

代码如下:

time.mktime(time.localtime())

#1563031277.0

5、time.sleep()

描述:该函数能让程序暂停休息,传入几秒,休息几秒

6、time.asctime()

描述:该函数将一个元祖转换成格式化时间。如果没有传入参数,默认传入time.localtime()。

代码如下:

time.asctime()

#'Sat Jul 13 23:24:31 2019'

7、time.ctime()

描述:该函数将一个时间戳转换成格式化时间。如果没有传入参数,默认传入time.time()。

代码如下:

time.ctime()

#'Sat Jul 13 23:27:08 2019'

8、time.strftime()

描述:该函数按照格式化字符把一个元祖转换成格式化时间字符串。如果没有传入参数,默认传入time.localtime()。

代码如下:

time.strftime("%Y-%m-%d %X", time.localtime())

#'2019-07-13 23:29:11'

9、time.strptime()

描述:该函数按照格式化字符把一个格式化时间字符串转换成元祖。

time.strptime('2019-07-13 23:29:11', '%Y-%m-%d %X')

#time.struct_time(tm_year=2019, tm_mon=7, tm_mday=13, tm_hour=23, tm_min=29, tm_sec=11, tm_wday=5, tm_yday=194, tm_isdst=-1)

原文地址:https://www.cnblogs.com/helloTerry1987/p/11182572.html