Python time和timedate模块:常用功能介绍

171 阅读1分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

在 Python 中,与时间处理有关的模块包括:time,datetime 和calendar,time 模块提供了各种时间相关的功能。 在深度学习中,常常需要获取训练和测试一个epoch的时间,以及自动需要建立日志,并以当前时间命名便于记录数据,因此往往要用到time模块。

一、获取程序运行时间

代码示例:

import time

# time.time(): 返回当前时间的时间戳
time_start = time.time()
for i in range(1, 10000000):
    i += 1
time_end = time.time()
print(time_end - time_start)  # 输出程序运行时间,单位为秒

输出时间(单位是秒):

1.225494384765625

二、获取当前日期和时间(年月日、时分秒)

代码示例(time):

# 获取当前时间,可以设置不同的格式
print(time.strftime('%Y/%m/%d  %H:%M:%S'))
print(time.strftime('%Y-%m-%d'))   # 获取当前时间的年月日
print(time.strftime('%H:%M:%S'))   # 获取当前时间的时分秒

输出:

2021/07/10  16:29:44
2021-07-10
16:29:44

代码示例(datetime):

from datetime import datetime
from datetime import date
print(datetime.now())   # current time
print(date.today())   # current date

输出:

2021-07-14 18:09:23.717369
2021-07-14

线程睡眠:time.sleep()

代码示例:

import time

time_start = time.time()
time.sleep(5)  # 设置线程睡眠时间为5s,即5s之后再执行程序
for i in range(1, 10000000):
    i += 1
time_end = time.time()
print(time_end - time_start)  # 输出程序运行时间,单位为秒

输出时间(单位是秒):

6.235414743423462

程序运行时间比没有加线程睡眠时增加了5s