Time库的使用

Time库包括三类函数,分别是:
时间获取:time() ctime() gmtime()
时间格式化:strftime() strptime()
程序计时:sleep(), perf_counter()

1、时间获取

在这里插入图片描述
注:时间戳是指格林威治时间1970年01月01日00时00分00秒起至当下的总秒数。通俗的讲, 时间戳是一份能够表示一份数据在一个特定时间点已经存在的完整的可验证的数据。(来自百度百科)

2、时间格式化:将时间以合理的方式展示出来

格式化:类似字符串格式化,需要有展示模板,展示模板由特定的格式化控制符组成
格式化控制符
在这里插入图片描述
时间格式化
在这里插入图片描述

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

测量时间:perf_counter()

  • 产生时间:sleep()
    在这里插入图片描述

4、文本进度条实例

1)单行动态刷新
刷新的本质是:用之后打印的字符覆盖之前的字符。在print()语句中加入end””,使其输出后不换行。打印光标退回到之前位置使用\r。

#TextProBarV2.py
import time
for i in range(101):
    print("\r{:3}%".format(i), end="")
time.sleep(0.1)

在IDLE执行结果:

0%  1%  2%  3%  4%  5%  6%  7%  8%  9% 10% 11% 12% 13% 14% 15% 16% 17% 18% 19% 20% 21% 22% 23% 24% 25% 26% 27% 28% 29% 30% 31% 32% 33% 34% 35% 36% 37% 38% 39% 40% 41% 42% 43% 44% 45% 46% 47% 48% 49% 50% 51% 52% 53% 54% 55% 56% 57% 58% 59% 60% 61% 62% 63% 64% 65% 66% 67% 68% 69% 70% 71% 72% 73% 74% 75% 76% 77% 78% 79% 80% 81% 82% 83% 84% 85% 86% 87% 88% 89% 90% 91% 92% 93% 94% 95% 96% 97% 98% 99% 100%

在IDLE中不会出现单行刷新的效果,是因为IDLE本身主要是编写程序的开发环境并不是程序运行的主要环境,我们正常运行程序要么通过双击运行,要么通过控制台运行,一般很少使用IDLE直接运行。IDLE被设定为是开发环境,为了保证参数运行的效果,IDLE中屏蔽了\r功能。
我们可以在cmd命令行观察其运行效果。

C:\Users\DELL4>cd E:/大学资料/MY OWN/Python/Code/
C:\Users\DELL4>e:
E:\大学资料\MY OWN\Python\Code>TextProBarV1.py
100%

2)完整效果

#TextProBarV3.py
import time
scale = 50
print("执行开始".center(scale//2, "-"))#在“执行开始”两侧用“-”填充
start = time.perf_counter()#体现计时效果,记录开始时间
for i in range(scale+1):
a = '*' * i
b = '.' * (scale - i)
c = (i/scale)*100
dur = time.perf_counter() – start#完成时间减去开始时间获得执行时间
print("\r{:^3.0f}%[{}->{}]{:.2f}s".format(c,a,b,dur),end='')
# \r用来在每次输出完成后,将光标移至行首,这样保证进度条始终在同一行输出,即在一行不断刷新的效果;
#{}Python中槽的表示
# {:^3.0f},输出格式为居中,占3位,小数点后0位,浮点型数,对应输出的数为c;{},
# ^, <, > 分别是居中、左对齐、右对齐,后面带宽度,: 号后面带填充的字符,只能是一个字符,不指定则默认是用空格填充。
# {:.2f},输出有两位小数的浮点数,对应输出的数为dur;
# end='',用来保证不换行,不加这句默认换行。
time.sleep(0.1) # 在输出下一个百分之几的进度前的停止时长,单位s
print("\n"+"执行结束".center(scale//2,'-'))

运行结果:

E:\大学资料\MY OWN\Python\Code>TextProBarV1.py
-----------执行开始----------
100%[**************************************************->]5.05s
-----------执行结束----------
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值