本文源自大学生慕课网站北京理工大学国家精品课程《python语言程序设计》一课听课笔记,课程地址https://www.icourse163.org/learn/BIT-268001#/learn/announce
time库的使用
time库是python中处理时间的标准库
——计算机时间表达
——提供获取系统时间并格式化输出功能
——提供系统级精确计时功能,用于程序性能分析
使用方法:import time
time. ()
time库包括三类函数
——时间获取:time() ctime() gmtime()
——时间格式化:strftime() strptime()
——程序计时:sleep() perf_counter()

time.time() 获取当前时间戳,即计算机内部时间值,时间戳是一个很长的浮点数,实际上它是表示从1970年1月1日0:00开始,到当前这一时刻为止的,一个以秒为单位的数值。

>>>time.time()
1579577806.593785

time.ctime()获取当前时间并以易读的方式表示,返回字符串

>>>time.ctime()
'Tue Jan 21 11:33:25 2020'

time.gmtime()获取当前时间,表示为计算机可处理的时间格式。

>>>time.gmtime()
time.struct_time(tm_year=2020, tm_mon=1, tm_mday=21, tm_hour=3, tm_min=38, tm_sec=4, tm_wday=1, tm_yday=21, tm_isdst=0)

时间格式化:将时间以合理的方式展示出来
——格式化:类似字符串格式化,需要有展示模板
——展示模板由特定的格式化控制符组成
——strftime()方法
strftime(tpl,ts)
tpl是格式化模板字符串,用来定义出输出效果
ts是计算机内部时间类型变量

>>> t=time.gmtime()
>>> time.strftime("%Y-%m-%d %H:%M:%S",t)
'2020-01-21 03:49:47'

时间格式化:
%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 小时(24h制)00~23,例如:12
%I 小时(12h制)01~12,例如:7
%p 上/下午 AM,PM,例如:PM
%M 分钟 00~59,例如:26
%S 秒 00~59,例如:26
strptime(str,tpl)与strftime(tpl,ts)是互补关系,其可以将格式化模板字符串转化为字符串形式的时间值。
strptime(str,tpl)函数中str是字符串形式的时间值,tpl是格式化模板字符串,用来定义输入效果。

>>> timestr='2019-1-22 09:33:20'
>>> time.strptime(timestr,"%Y-%m-%d %H:%M:%S")
time.struct_time(tm_year=2019, tm_mon=1, tm_mday=22, tm_hour=9, tm_min=33, tm_sec=20, tm_wday=1, tm_yday=22, tm_isdst=-1)

程序计时
——程序计时指测量起止动作所经历时间的过程
——测量时间:perf_counter()
——产生时间:sleep()
perf_counter()返回一个CPU级别的级别的精确时间计数值,单位为秒,由于这个计数值起点不确定,连续调用差值才有意义。

>>> start=time.perf_counter()
>>> end=time.perf_counter()
>>> end-start
15.883435199999994

sleep(s)函数中的s是拟休眠时间,单位是秒,可以是浮点数

>>> def wait():
...     time.sleep(5)
...
>>> wait()#程序将等待5秒后再退出