问题描述
采用字符串的方式,打印可以动态变化的文本进度条,进度条需要能在一行中逐渐变化。
问题分析
首先,这个问题要求打印出类似进度条的字符串,这就会涉及到字符串操作符、字符串函数、字符串输出格式化等知识;
其次,这个问题要求进度条在一行中逐渐变化,这就要求每次字符串的输出不换行且覆盖原来输出的内容,要求会使用转义符“\r”,“\n”等。
最后,设计好程序的结构,即输入和输出,结合上面分析的程序主体,即可完成问题。
求解过程
问题简化
为了更快的将程序主体设计好,我们将问题尽可能的简化。
这个问题,我们可以先将它简化成:
制作几个格式符合要求的的字符串,并将他们逐一输出。
#referes_bar.py
import time as t
start_t=t.perf_counter()
print("安装开始".center(10,"="))
for i in range(11):
a=i*"*"
b=(10-i)*"."
c=i*10
d=t.perf_counter()-start_t
print("{:3}% [{}>{}] {:.2f}s".format(c,a,b,d))
t.sleep(0.1)
print("安装结束".center(10,"="))
输出结果如下: