用Python给程序加个进度条

第一时间关注程序猿(媛)身边的故事

图片源自网络

作者

猿媛牧场

如需转载,请联系原作者授权。

对于开发或者运维来说,使用 Python 去完成一些跑批任务,或者做一些监控事件是非常正常的情况。那么如何有效地监控任务的进度?除了在任务中加上 Log 外,还能不能有另一种方式来了解任务进展到哪一步了呢?

这就是今天我们来了解的内容——进度条。

▌标准输出

首先说一下在操作系统中,都有哪些控制符:

\r: 将光标移动到当前行的首位而不换行;

\n:将光标移动到下一行,并不移动到首位;

\r\n:将光标移动到下一行首位。

那让我们来看下如何通过 Python 来将标准输出中添加进度条吧。

来看下实际效果,这里我录了一段GIF:

▌Tqdm 模块

Tqdm 是一个快速、扩展性强的进度条工具库,它提供了非常多的接口,有兴趣的小伙伴可以了解一下。

GitHub 地址是:https://github.com/tqdm/tqdm。

我们来看下,如何使用 Tqdm 模块来实现进度条。

1. 首先是安装,非常简单。

2. 接下来就是具体的操作。

是不是看到这里发现,Tqdm 非常的简单呢?这只是一个例子,它也可以非常的复杂,同时也支持多线程、多进程,还有 Pandas。

来一个多进程的感受下吧。

所有的代码都已经 Push 到我的 GitHub 上去了,有兴趣的小伙伴可以前去Download。

Miracle Github:https://github.com/MiracleYoung/exercises

声明:本文为作者投稿,版权归作者所有。

- The End -

「若你有原创文章想与大家分享,欢迎投稿。」

加编辑微信ID,备注#投稿#:

程序 丨 druidlost

小七 丨 duoshangshuang

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180624A0EY6O00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券