文本进度条的实现
引入
import time
主要是为了使程序暂停一会,以便人眼便于观察
- \r 将光标的位置回退到本行的开头位置
- {:3.0f}表示以三位数据宽度的形式,有效小数位数为0的表示
- end" " python在默认状态下会在字符串后面添加换行字符,添加end关键字后就可以使print在一行不断的刷新
import time
for i in range(50):
print("\r{:3.0f}%".format(i),end="") //\r将光标的位置回退到本行的开头位置
time.sleep(0.1)
进一步可以实现一个文本进度条式的显示
import time
scale = 100
print("执行开始".center(scale+10,"-"))
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+10,"-"))
输出结果