模块介绍
time 模块是 python 的标准库之一,提供了多种与时间相关的函数。它允许用户获取当前的时间、进行时间间隔的操作以及处理与日期和时间相关的转换。该模块提供了许多功能,如计算时间差、暂停程序、格式化时间字符串等。
该模块的函数大多数与系统的时钟操作密切相关,支持多种不同平台和系统的时间格式。
使用场景
- 获取当前时间: 获取当前时间戳、格式化时间、日期等。
- 时间转换: 将时间戳转换为人类可读的时间格式,或将格式化时间转为时间戳。
- 延时和控制: 暂停程序执行一段时间,适用于控制程序执行的速度。
- 性能测量: 测量程序的执行时间。
- 设置时间区域: 设置和获取本地时间的时区。
主要类
类 | 描述 |
---|---|
struct_time | 返回由 localtime() 或 gmtime() 函数提供的结构化时间对象,包含了年份、月份、日期、小时、分钟、秒等信息。 |
主要函数
函数 | 描述 |
---|---|
time() | 返回当前时间的时间戳(1970纪元后经过的秒数)。 |
sleep(seconds) | 暂停程序执行指定的秒数。 |
localtime([secs]) | 将秒数转换为本地时间的结构化时间。 |
gmtime([secs]) | 将秒数转换为格林尼治标准时间(utc)的结构化时间。 |
strftime(format[, t]) | 根据给定的格式化字符串返回格式化的时间。 |
strptime(string, format) | 根据给定的格式化字符串解析时间字符串。 |
perf_counter() | 返回一个高精度的时间计数器,通常用于测量时间间隔。 |
process_time() | 返回程序的 cpu 执行时间,忽略休眠和等待时间。 |
- time()
返回当前的时间戳,即自 1970 年 1 月 1 日(unix 纪元)以来经过的秒数。它可以用于测量时间间隔、时间戳的获取等。
import time timestamp = time.time() print("current timestamp:", timestamp)
- sleep()
让程序暂停执行指定的秒数。适用于需要延迟程序执行的场景,例如在某些任务间隔时暂停。
import time print("start") time.sleep(3) # 暂停 3 秒 print("end")
- localtime()
将时间戳转换为本地时间的 struct_time
对象。如果未传入参数,它默认返回当前时间的本地时间。
import time time_obj = time.localtime() print(time_obj.tm_year) # 获取年份 print(time_obj.tm_mon) # 获取月份 print(time_obj.tm_mday) # 获取日 print(time_obj.tm_hour) # 获取小时 print(time_obj.tm_min) # 获取分钟 print(time_obj.tm_sec) # 获取秒
- gmtime()
将时间戳转换为格林尼治标准时间(utc)的 struct_time
对象。如果未传入参数,它默认返回当前时间的 utc 时间。
import time utc_time = time.gmtime() print(utc_time) # 输出当前的 utc 时间结构
- strftime()
根据给定的格式化字符串返回格式化的时间。常用于将 struct_time
对象转换为易读的时间格式。
import time formatted_time = time.strftime("%y-%m-%d %h:%m:%s", time.localtime()) print("formatted time:", formatted_time)
- strptime()
根据给定的格式化字符串解析时间字符串,并返回 struct_time
对象。适用于时间字符串的解析。
import time time_str = "2025-01-14 15:30:00" parsed_time = time.strptime(time_str, "%y-%m-%d %h:%m:%s") print("parsed time:", parsed_time)
- perf_counter()
返回一个高精度的计数器,通常用于测量时间间隔。适用于程序性能分析和时间测量。
import time start = time.perf_counter() # 执行某些操作 end = time.perf_counter() print(f"elapsed time: {end - start} seconds")
- process_time()
返回程序的 cpu 执行时间,不包括系统休眠时间。适用于计算程序的执行时间,尤其是涉及 cpu 密集型任务时。
import time start = time.process_time() # 执行某些计算 end = time.process_time() print(f"cpu time: {end - start} seconds")
注意事项
- 时间戳与本地时间:time.time() 返回的是自 unix 纪元以来的秒数(时间戳),而 localtime() 和 gmtime() 可以将其转换为结构化的本地时间或 utc 时间。
- 夏令时(dst):在某些时区中,夏令时可能会影响时间计算,需要注意时区差异。
- 高精度计时器:perf_counter() 提供更高精度的时间计数器,适合用于性能分析。
- cpu时间与实际时间:process_time() 只计算 cpu 执行时间,忽略了程序的等待和休眠时间。
总结
time 模块为 python 提供了处理时间和日期的多种功能,适用于多种与时间相关的场景,包括获取当前时间、格式化时间、暂停程序执行、计算程序运行时长等。通过这些功能,开发者可以更高效地处理时间任务、执行性能测量以及进行程序调度。
到此这篇关于python 标准库time时间的访问和转换的文章就介绍到这了,更多相关python 标准库time内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!
发表评论