Python中的时间处理函数——time模块详解
Python中的time模块是用来处理时间相关操作的一个内置模块,主要包含了时间的表示、获取、转换等功能。在实际的编程开发中,时间的处理是非常重要的一个环节,例如日志记录、数据分析、用户在线状态等都需要用到时间相关的操作。
本文将对time模块的使用进行详细介绍。
# 一、time模块的基本操作
## 1. 获取当前时间
获取当前时间的函数是time.time(),它返回从1970年1月1日0时0分0秒到当前时间的秒数。
import time now = time.time() print(now)
## 2. 将当前时间转换为可读的格式
time.ctime()函数可以将当前时间转化为可读格式的字符串。
import time now = time.ctime() print(now)
## 3. 获取当前时间的年、月、日、时、分、秒等信息
time.localtime()函数可以获取当前时间的年、月、日、时、分、秒等信息,返回的是一个元组。
import time now = time.localtime() print(now) print(now.tm_year, now.tm_mon, now.tm_mday, now.tm_hour, now.tm_min, now.tm_sec)
## 4. 格式化时间
time.strftime()函数可以根据指定的格式将时间格式化为字符串。
import time
now = time.localtime()
str_time = time.strftime("%Y-%m-%d %H:%M:%S", now)
print(str_time)
## 5. 将指定格式的时间字符串转换为时间戳
time.strptime()函数将指定格式的时间字符串转换为结构化时间,然后使用time.mktime()函数将结构化时间转换为时间戳。
import time str_time = "2021-06-30 16:40:00" struct_time = time.strptime(str_time, "%Y-%m-%d %H:%M:%S") timestamp = time.mktime(struct_time) print(timestamp)
## 6. 延迟执行
time.sleep()函数可以让程序暂停指定的时间,单位为秒。这个函数常用于需要等待一定时间后才能执行的操作,例如定时任务等。
import time
print("开始执行任务")
time.sleep(5)
print("任务执行完毕")
# 二、常用的时间处理函数
## 1. 计算时间差
time模块中还提供了一些用于计算时间差的函数,例如计算两个时间点之间的秒数、分钟数等等。
import time
start_time = time.time()
time.sleep(5)
end_time = time.time()
diff = end_time - start_time
print("任务执行时间:%.2f 秒" % diff)
## 2. 获取程序执行时间
time模块的另一个常用之处是在代码编写中获得函数和代码块的运行时间。一些具有复杂性或对性能影响的代码块,如循环、递归、多线程、函数等等,必须小心检查。
import time
def func():
for i in range(10):
print(i)
return
start_time = time.time()
func()
end_time = time.time()
print("函数执行时间:%.2f 秒" % (end_time - start_time))
## 3. 获取代码运行时间
timeit模块允许Python程序员在Python中测量小段代码的执行时间。它提供了一个简单的方式来在代码中测量小段代码的执行时间。
import timeit
def func():
for i in range(10):
print(i)
return
timeit.timeit("func()", globals=globals(), number=1)
timeit.timeit()函数返回运行代码的耗时,使用globals()传递函数,使用number参数指定执行的次数。
# 三、总结
这里涵盖的仅仅是一些基本的time模块函数,更多有关时间的方法可以在Python官方文档中找到。时间处理经常应用在数据记录、日志、情报分析等的开发中,开发人员需要熟练掌握时间处理相关的知识。
