Python 输出命令行进度条
在使用 pip 安装时,你会发现有下载进度条,我们也可以借助开源的第三方库来实现这个功能,在项目输出时增加一些可视化效果。
一个简单易用的第三方库是:progress
作者提供了动图很直观地展现了实现的所有输出。
这个库实现了两类样式,一类是有终点的进度条样式,另一类是多用于加载的转圈样式。
参数定义的功能:
- max: 进度条最大进度
- fill:进度条填充的字符
- suffix:百分比的样式
运行上述代码会得到输出
同时也提供上下文的用法(需要用 Github 里的源代码):
另一类转圈样式,用法和Bar
类似,只要没达到终点就一直调用next
方法即可
动图里的所有样式都是作者已经实现的派生类,用法基本都一样,当然也可以继承基础类来自己实现更多的功能。
上面介绍的库,实现的功能很简单,而且默认只能输出到终端。
如果有更复杂的使用场景,推荐使用另一个库:python-progressbar
这个库实现了更多功能,可以自定义组合出一个进度条样式,还可以指定输出流。
基本的使用很简单,可以直接传入迭代对象。
输出如下:
也可以生成对象后调用update
方法 。
最有特点之处就是可以自定义组件,比如我们来实现类似于动图中转圈加载的样式。
输出样式是这样的,方括号中的会一直旋转
更多功能不再赘述,可以查看 Github 中的文档
欢迎关注
微信公众号:面向人生编程
编程思维不应只存留在代码之中,更应伴随于整个人生旅途,这个公众号不只聊技术,还会聊产品/互联网/经济学等广泛话题,所以也欢迎非程序员关注。