time库概述
time库是时间处理的标准库
-计算机时间的表达
-提供获取系统时间并格式化输出功能
-提供系统级精确计时功能,用于程序分析
time库包含三类函数
-1、时间获取: time(),ctime(),gmtime()
time.ctime()输出的是当前的北京时间,time.gmtime()输出的是当前的格林时间
-2、时间格式化: strftime(),striptime()
-3、程序记时:sleep(),perf_counter()
时间获取
函数 | 描述 |
---|
time() | 获取当前时间戳,即计算机内部时间值,浮点数 例如:time.time() 得到输出1605197871.8480115 |
ctime() | 获取当前时间,并以易读方式表示,例如: time.ctime() 得到输出’Fri Nov 13 00:17:57 2020’ |
gmtime() | 获取当前时间,并以计算机可处理的格式表示,例如:time.gmtime()得到输出time.struct_time(tm_year=2020, tm_mon=11, tm_mday=12, tm_hour=16, tm_min=18, tm_sec=5, tm_wday=3, tm_yday=317, tm_isdst=0) |
时间格式化
将时间用合理的方式展示出来
-格式化:类似字符串的格式化,需要展示模板
-展示的特定格式由特定的格式化控制符组成
-strftime()方法
函数 | 描述 |
---|
strftime(tpl,ts) | tpl是格式化模板字符串,用于定义输出效果。ts是计算机内部时间类型变量。例如 t=time.gmtime(),time.strftime("%Y-%m-%d %H:%M:%S",t) 输出结果为 ‘2020-11-12 16:32:18’ |
格式化控制符
格式化字符串(日期/时间说明) | 值范围和实例 |
---|
%Y(年份) | 0000-9999,例如:1234 |
%m(月份) | 01-12,例如:11 |
%B(月份名称) | January-December,例如:June |
%b(月份名称缩写) | Jan-Dec,例如:Apr |
%d(日期) | 01-31,例如:21 |
%A(星期) | Monday-Sunday,例如:wednesday |
%a(日期缩写) | Mon-Sun,例如:Wed |
%H(小时,24小时制) | 00-23,例如:13 |
%I(小时,12小时制) | 00-12,例如:05 |
%p(上/下午) | AM或PM,例如:AM |
%M(分钟) | 00-59,例如:45 |
%S(秒) | 00-59,例如:32 |
小例子:t=time.gmtime() t1=time.strftime("%Y-%m-%d %H:%M:%S",t) time.strptime(t1,"%Y-%m-%d %H:%M:%S")
可得到输出:time.struct_time(tm_year=2020, tm_mon=11, tm_mday=12, tm_hour=16, tm_min=32, tm_sec=18, tm_wday=3, tm_yday=317, tm_isdst=-1)
函数 | 描述 |
---|
strptime(str,tpl) | str是字符串形式的时间值,tpl是格式化模板字符串,用来定义 输入效果 |
程序计时
-定义:程序计时指测量起止动作所经历时间的过程
-测量时间:perf_counter()
-产生时间:sleep()
函数 | 描述 |
---|
perf_counter | 返回一个CPU级别的精确时间计数值,单位为秒,由于这个计数值起点不确定,连续调用差值才有意义 |
sleep(s) | s拟休眠的时间,单位是秒,可以是浮点数 |