Python标准库time详解
一、time模块概述
随着计算机技术越来越发达,时间这一概念也越来越重要,而Python标准库中的time模块就提供了对时间的一些基础操作,它是一个与时间有关的模块。
time模块是Python标准库中的内置模块,可以使用import time导入。
import time
time模块中一些重要函数的介绍:
1. time.time()
返回当前时间的时间戳,时间戳是指自1970年1月1日00:00:00开始按秒计算的偏移量。
import time
now = time.time()
print(now)
输出结果:
1585760048.0811007
该函数通常用于程序的性能测试。
2. time.localtime()
返回指定的时间戳所表示的当地时间的时间元组。
import time
now = time.time()
local_time = time.localtime(now)
print(local_time)
输出结果:
time.struct_time(tm_year=2020, tm_mon=4, tm_mday=1, tm_hour=9, tm_min=14, tm_sec=3, tm_wday=2, tm_yday=92, tm_isdst=0)
time.localtime()函数返回的元组中,tm_year表示年份,tm_mon表示月份,tm_mday表示日,tm_hour表示时,tm_min表示分,tm_sec表示秒,tm_wday表示星期几,tm_yday表示当年已过多少天,tm_isdst表示夏令时。
3. time.sleep()
推迟调用线程的运行,以指定的秒数让线程睡眠。
import time
print("start")
time.sleep(3)
print("end")
输出结果:
start
end
在上述例子中,程序会在打印start三秒之后再打印end。
4. time.strftime()
将指定的时间元组根据指定的格式化字符串输出为字符串。
import time
local_time = time.localtime()
print(time.strftime("%Y-%m-%d %H:%M:%S", local_time))
输出结果:
2020-04-01 09:24:45
在上例中,time.strftime()函数中的“%Y-%m-%d %H:%M:%S”为格式化字符串,%Y表示四位数的年,%m表示两位数的月份,%d表示两位数的日,%H表示24小时制下的小时数,%M表示分钟数,%S表示秒数。时间格式化字符串的详细规则可在Python官方文档中查看。
二、time模块的其他内容
1. 时间戳转换为时间元组
我们可以使用time.localtime()函数将时间戳转换为本地时间的time.struct_time
类型。
import time
now = time.time()
local_time = time.localtime(now)
print(local_time)
输出结果:
time.struct_time(tm_year=2020, tm_mon=4, tm_mday=1, tm_hour=9, tm_min=14, tm_sec=3, tm_wday=2, tm_yday=92, tm_isdst=0)
2. 时间戳转换为时间字符串
我们可以使用time.localtime()函数将时间戳转换为时间元组,再使用time.strftime()函数将时间元组转换为指定格式的时间字符串。
import time
now = time.time()
local_time = time.localtime(now)
time_str = time.strftime("%Y-%m-%d %H:%M:%S", local_time)
print(time_str)
输出结果:
2020-04-01 09:24:45
3. 时间字符串转换为时间戳
我们可以使用time.strptime()函数将时间字符串转换为time.struct_time
类型的时间值,然后使用time.mktime()函数将时间元组转换为时间戳。
import time
time_str = "2020-04-01 09:24:45"
local_time = time.strptime(time_str, "%Y-%m-%d %H:%M:%S")
timestamp = time.mktime(local_time)
print(timestamp)
输出结果:
1585734285.0
4. 其他函数
time模块中还有其他一些函数,比如:time.gmtime()
、time.ctime()
等,它们都可以用于时间的转换和格式化。
总结
time模块是Python标准库中一款与时间相关的内置模块,主要提供了时间戳、时间元组和格式化时间字符串之间的转换。在实际开发中,我们可以通过这些函数灵活地处理时间操作,实现各种功能。