python动态进度条的实现代码,具体内容如下所示:
有时候我们需要使用print打印工作进度,正常使用print函数会导致刷屏的现象,举个最简单的例子,从1打印到10,每次停顿0.1秒
这样看起来很麻烦,有没有办法实现动态的进度显示呢?我们可以使用'\r',这个命令可以使光标重新返回头部,之后设置end='',取消python的打印自动换行的功能
1
2
3
4
|
import time for i in range ( 10 ): print ( '\r比例' ,i / 10 ,end = '') time.sleep( 1 ) |
便可以实现动态显示进度了
ps:下面看下用python实现单行动态刷新文本进度条
TextProBar.py
1
2
3
4
5
6
7
8
9
10
11
12
|
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 , "-" )) |
\r:可以使打印后的光标退回到之前的位置覆盖之前的字符,不过会被IDLE屏蔽。所以要用命令行`执行
(IDLE本身是编写程序的开发环境,并不是程序运行的主要环境。正常运行程序我们要么通过双击要么通过控制台,一般很少直接通过IDLE来运行的。由于IDLE被设定为开发环境,为了保证其中参数的运行效果,所以就把其中一个效果\r给屏蔽了)
总结
以上所述是小编给大家介绍的python动态进度条的实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
原文链接:https://blog.csdn.net/a5139515/article/details/80420780