【 1. 文本进度条单行动态刷新 】
要求
- 刷新的本质是:用之后打印的字符覆盖之前的字符
- 不能换行:print()需要被控制
- 要能回退:打印后光标退回到之前的位置 \r
实例1
#TextProBarV2.py
import time
for i in range(101):
print("\r{:3}%".format(i), end="")
time.sleep(0.1)
效果:从1%变换到100%
实例2
#Te
import
xtProBarV3.py
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='')
time.sleep(0.1)
print("\n"+"执行结束".center(scale//2,'-'))
效果:显示百分比和运行时间
【 2. 文本进度条多行动态刷新 】
采用字符串方式打印可以动态变化的文本进度条,使其在一行中逐渐变化
#TextProBarV1.py 简单的开始
import time
scale = 10
print("------执行开始------")
for i in range(scale+1):
a = '*' * i
b = '.' * (scale - i)
c = (i/scale)*100
print("{:^3.0f}%[{}->{}]".format(c,a,b))
time.sleep(0.1)
print("------执行结束------")
效果:逐行打印
【 3. 进度条应用 】
运行时间需要较长的程序中增加进度条,创造一个假象,显得进度更快些,让用户更有耐心等下去。
设计假象值和真值之间的函数,创造假象。