当前位置:
首页 > Python基础教程 >
-
(五)time库的使用
Python是一种功能强大的编程语言,其标准库中包含了丰富的模块和函数,用于处理时间和日期信息。其中,time模块提供了对时间的访问和处理功能,使得程序员可以轻松地操作时间数据。本篇博文将详细介绍time库的使用方法,包括基本介绍、时间获取方式、时间格式化和程序计时应用。
-
time库基本介绍
Python中的time模块提供了与时间相关的各种函数,包括获取当前时间、操作时间对象、线程延时等功能。使用time模块,可以方便地处理时间戳、时间格式化、程序计时等操作。
import time
2. 时间获取的三种方式
在Python中,获取时间的方式主要有三种:获取当前时间戳、获取本地时间和获取UTC时间。
获取当前时间戳:时间戳表示从1970年1月1日零时整以来的秒数。可以使用time.time()函数获取当前时间戳。
import time
timestamp = time.time()
print("当前时间戳为:", timestamp)
获取本地时间:本地时间是指当前所在时区的时间。可以使用time.ctime()函数获取当前的本地时间。
import time
local_time = time.ctime()
print("当前本地时间为:", local_time)
获取UTC时间:UTC时间是协调世界时,也称为格林威治标准时间。可以使用time.gmtime()函数获取当前的UTC时间。
import time
utc_time = time.gmtime()
print("当前UTC时间为:", utc_time)
-
时间格式化
时间格式化是将时间对象转换为特定格式的字符串,便于人们阅读和理解。Python中使用time.strftime()函数进行时间格式化。
import time
# 获取当前时间的本地时间对象
local_time = time.ctime()
# 格式化时间输出
formatted_time = time.strftime("%Y-%m-%d %H:%M:%S", ctime)
print("当前时间的格式化输出为:", formatted_time)
在strftime()函数中,可以使用不同的格式化字符串来定义输出的时间格式,例如
%Y:四位数的年份,例如:2024
%m:两位数的月份(01-12),例如:08
%d:两位数的日期(01-31),例如:07
%H:24小时制的小时数(00-23),例如:15
%M:两位数的分钟数(00-59),例如:30
%S:两位数的秒数(00-59),例如:45
%a:本地简化星期名称,例如:Mon 到 Sun
%A:本地完整星期名称,例如:Monday 到 Sunday
%b:本地简化月份名称,例如:Jan 到 Dec
%B:本地完整月份名称,例如:January 到 December
%c:本地相应的日期和时间表示,例如:Tue Aug 7 10:30:45 2024
%I:12小时制的小时数(01-12),例如:03
%p:本地的AM或PM的等价符,例如:AM 或 PM
%j:一年中的第几天(001到366),例如:365
%U:一年中的星期数(00到53),星期天作为一周的第一天,新年至少有几天
-
程序计时应用
程序计时是指测量程序运行的时间,可以用来评估程序的性能或者实现定时任务。Python中使用time模块进行程序计时非常简单,通过记录起始时间和结束时间来计算程序执行的时间消耗。另外,Python提供了time.perf_counter()函数,它返回系统运行时间的精确计数值(以小数秒为单位)。
import time
# 记录起始时间
start_time = time.perf_counter()
# 模拟程序执行
time.sleep(2) # 假设程序执行了2秒钟
# 记录结束时间
end_time = time.perf_counter()
# 计算程序执行时间
execution_time = end_time - start_time
print("程序执行时间为:", execution_time, "秒")
在上述示例中,使用了time.sleep(2)模拟程序执行了2秒钟,然后time.perf_counter()计算了程序执行的实际时间。time.perf_counter()函数用来记录程序开始和结束的精确时间点,计算得到的 execution_time 是以秒为单位的执行时间。这种方法通常用于性能测试和需要更精确时间测量的应用场景中。
来源:https://www.cnblogs.com/liangyixu342/p/18346526
栏目列表
最新更新
求1000阶乘的结果末尾有多少个0
详解MyBatis延迟加载是如何实现的
IDEA 控制台中文乱码4种解决方案
SpringBoot中版本兼容性处理的实现示例
Spring的IOC解决程序耦合的实现
详解Spring多数据源如何切换
Java报错:UnsupportedOperationException in Col
使用Spring Batch实现批处理任务的详细教程
java中怎么将多个音频文件拼接合成一个
SpringBoot整合ES多个精确值查询 terms功能实
数据库审计与智能监控:从日志分析到异
SQL Server 中的数据类型隐式转换问题
SQL Server中T-SQL 数据类型转换详解
sqlserver 数据类型转换小实验
SQL Server数据类型转换方法
SQL Server 2017无法连接到服务器的问题解决
SQLServer地址搜索性能优化
Sql Server查询性能优化之不可小觑的书签查
SQL Server数据库的高性能优化经验总结
SQL SERVER性能优化综述(很好的总结,不要错
uniapp/H5 获取手机桌面壁纸 (静态壁纸)
[前端] DNS解析与优化
为什么在js中需要添加addEventListener()?
JS模块化系统
js通过Object.defineProperty() 定义和控制对象
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比