1. 简单的开始
1.1)range从0开始
1.2)^表示中间对齐
# coding=utf-8 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("------执行结束------")
2.单行动态刷新
2.1)range从0开始,到100结束
2.2)\r表示将光标放到当前行行首
2.3)end=‘“”表示打印结束不换行(print函数默认打印完后换行)
2.4)在idle环境中\r功能被屏蔽,会输出所有执行结果
import time for i in range(101): print("\r{}%".format(i), end="") time.sleep(0.1)
3.单行进度条计时刷新
3.1)字符串处理中的.center方法,将“-”添加在字符两侧
3.2)scale//2,数值运算操作符//表示整数除,向下取整
3.3)perf_counter函数用于计时,定义start来确定一个开始时间
3.4)dur变量用来记录每一次需要打印文本进度条时消耗的时间,当前时间减去开始时间
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='') time.sleep(0.1) print("\n" + "执行结束".center(scale//2, "-"))