time库的使用

  • time库基本介绍
  • 时间获取
  • 时间格式化
  • 格式化
  • 程序计时应用

time库的基本介绍

time库是python中处理时间的标准库

  • 计算机时间的表达
  • 提供获取系统时间并格式化输出功能
  • 提供系统级精确计时功能,用于程序性能分析

inport time

time.<b>()   调用相关函数

time库包括三类函数

  1. 时间获取:time()        ctime()        gmtime()
  2. 时间格式化:strftime()        strptime()
  3. 程序计时:sleep()        perf_counter()   (perfect counter)

时间获取

函数描述
time()

获取当前时间戳,即计算机内部时间值,浮点数

>>>time.time()

1697629483.1190748

ctime()

获取当前时间并以易读方式表示,返回字符串

>>>time.ctime()

'Wed Oct 18 19:47:42 2023'

gmtime()

获取当前时间,表示为计算机可处理的时间格式,称之为struct_time格式

>>>time.gmtime()

time.struct_time(tm_year=2023, tm_mon=10, tm_mday=18, tm_hour=11, tm_min=51, tm_sec=39, tm_wday=2, tm_yday=291, tm_isdst=0)

时间戳是指当前系统中表示时间的一个浮点数,它是计算机内部的时间值,它是从1970年1月1日00:00时开始到当前这一时刻为止,以秒为单位的数值

时间格式化

将时间以合理的方式展示出来

格式化:类似字符串格式化,需要有展示模板

展示模板由特定的格式化控制符组成

strftime()方法
函数描述
strftime(tpl,ts)

tpl是格式化模板字符串,用来定义输出效果

ts是计算机内部时间类型变量

>>>t = time.gmtime()

>>>time.strftime("%Y-%m-%d %H:%M:%S",t)

'2023-10-18 12:30:44'

控制符的表达方式:%加一个字母

格式化字符串日期/时间说明值范围和实例
%Y年份0000~9999,例如1900
%m月份01~12,例如10
%B月份名称January~December,例如April
%b月份名称缩写Jan~Dec,例如Apr
%d日期01~31,例如25
%A星期Monday~Sunday,例如Wednesday
%a星期缩写Mon~Sun,例如Wed
%H小时(24小时制)00~23,例如12
%I小时(12小时制)01~12,例如7
%p上/下午AM,PM,例如PM
%M分钟00~59,例如26
%S00~59,例如26
strptime()方法
函数描述
strptime(str,tpl)

str是字符串形式的时间值

tpl是格式化模板字符串,用来定义输入效果

>>>timeStr="2023-10-18 20:54:40"

>>>time.strptime(timeStr,"%Y-%m-%d %H:%M:%S")

time.struct_time(tm_year=2023, tm_mon=10, tm_mday=18, tm_hour=20, tm_min=54, tm_sec=40, tm_wday=2, tm_yday=291, tm_isdst=-1)

格式化

格式化用于将数据以特定的方式呈现给用户或存储到文件中。格式化的主要用途包括

1.可读性:格式化使数据更易于阅读和理解。例如,将数字格式化为货币或百分比形式,将日期格式化为人类可读的形式

2.数据存储:格式化数据后,可以将其保存到文件或数据库中,以便稍后检索和使用。这有助于数据的持久性和可维护性。

3.界面设计:在用户界面中,格式化可以改善用户体验,使信息更易于处理。例如,将大型文本块分段成段落,使用不同的字体或颜色突出显示关键信息等。

字符串格式化是将数据插入到字符串中的过程,以便生成带有特定数据的文本。常见方法包括:

  • 使用占位符:例如,"Hello,{}!"然后使用占位符的值替换{}
  • 使用格式字符串:例如,"Today is{}-{}-{}",然后使用日期的年、月和日替换占位符
  • 使用字符串模板:一些编程语言提供字符串模板,允许将数据嵌入到字符串中。eg. str.format()方法

时间格式化是将日期和时间数据以可读的形式呈现给用户。这包括将日期时间对象转化为特定格式。

格式化的存在意义在于提高数据的可理解性、可读性和可维护性。

程序计时应用

程序计时指测量起止动作所经历时间的过程

程序计时主要包括测量时间和产生时间两部分

测量时间:perf_counter()        指的是能够记录时间的流逝

产生时间:sleep()        它可以让程序去休眠或者产生一定的时间

函数描述
perf_counter()

返回一个CPU级别的精确时间计数值,单位为秒

由于这个计数值起点不确定,连续调用差值才有意义

>>>start = time.perf_counter()

1659691.4149864

>>>end = time.perf_counter()

1659691.415007

>>>end - start

2.0600156858563423e-05

sleep(s)

s拟休眠的时间,单位是秒,可以是浮点数

>>>def wait():

             time.sleep(3.3)

>>>wait()        #程序将等待3.3秒后再退出

perf_counter()函数非常精准,它可以获取计算机中CPU(中央处理器)以其频率运行的时钟(往往以纳秒计算)

perf_counter()函数通常返回一个持续增加的浮点数值,以表示时间的流逝。其计数值起点不是随机值,而是与计算机系统相关的具体实现和硬件性能计数器有关。

计数值的起点可能因操作系统、硬件平台或系统配置的不同而有所差异。通常这个起点是相对于某个特定的基准时间点或系统启动时间来计算的。perf_count()主要用途为测量时间间隔或性能计数。

  • 9
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值