python time模块实例详解

python中time模块是我们经常用到的,这个模块主要有三种处理时间的方法

1.timestamp时间戳

2.时间元祖struct_time

3.格式化时间strptime和mktime

我们首先来讲讲time()

import time
print(time.time())

打印出当前时间戳是一个7位小数的浮点数值

1546658552.8154871

localtime()会返回一个时间元祖列表

print(time.localtime())

打印出结果是

time.struct_time(tm_year=2019, tm_mon=1, tm_mday=5, tm_hour=11, tm_min=22, tm_sec=32, tm_wday=5, tm_yday=5, tm_isdst=0)

通过这个方法我们得到一个tuple后面可以对这个元祖进行格式化,得到一个时间的字串

例如

ctime()和asctime()生成一个固定的时间格式

print(time.ctime())
print(time.asctime())

打印出

Sat Jan  5 11:30:05 2019
Sat Jan  5 11:30:05 2019

接下来我们看看如何格式化时间戳

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

打印出

20190105

参数说明:

format -- 格式字符串。
t -- 可选的参数t是一个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 当前时区的名称
%% %号本身

使用strptime可以将时间字符串转换成struct_time的元祖,例

print(time.strptime("2018-12-12", "%Y-%m-%d"))

打印出

time.struct_time(tm_year=2018, tm_mon=12, tm_mday=12, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=2, tm_yday=346, tm_isdst=-1)

将以上二维元祖也是可以转回时间戳的

strtime = time.strptime("2018-12-12", "%Y-%m-%d")
print(int(time.mktime(strtime)))

打印出

1544544000

默认是返回一个一位小数的浮点数

最后就是sleep函数推迟调用线程的运行,可通过参数secs指秒数,表示进程挂起的时间

time.sleep(3)


内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://sulao.cn/post/118.html