教你用Python脚本使用进度条
安装
github地址:https://github.com/tqdm/tqdm
想要安装tqdm
也是非常简单的,通过pip或conda就可以安装,而且不需要安装其他的依赖库
pip安装
1 |
|
conda安装
1 |
|
迭代对象处理
对于可以迭代的对象
都可以使用下面这种方式,来实现可视化进度,非常方便
1 2 3 4 5 6 |
|
在使用tqdm
的时候,可以将tqdm(range(100))
替换为trange(100)
代码如下
1 2 3 4 5 6 |
|
观察处理的数据
通过tqdm
提供的set_description
方法可以实时查看每次处理的数据
1 2 3 4 5 6 7 |
|
手动设置处理的进度
通过update
方法可以控制每次进度条更新的进度
1 2 3 4 5 6 7 8 9 |
|
除了使用with
之外,还可以使用另外一种方法实现上面的效果
1 2 3 4 5 6 7 8 9 10 11 |
|
linux命令展示进度条
不使用tqdm
1 2 3 4 5 6 |
|
使用tqdm
1 2 3 4 5 6 7 |
|
指定tqdm的参数控制进度条
1 2 3 |
|
1 2 3 |
|
自定义进度条显示信息
通过set_description
和set_postfix
方法设置进度条显示信息
1 2 3 4 5 6 7 8 9 10 11 |
|
1 2 3 4 5 6 7 8 9 |
|
多层循环进度条
通过tqdm
也可以很简单的实现嵌套循环进度条的展示
1 2 3 4 5 6 |
|
在pycharm
中执行以上代码的时候,会出现进度条位置错乱,目前官方并没有给出好的解决方案,这是由于pycharm不支持某些字符导致的,不过可以将上面的代码保存为脚本然后在命令行中执行,效果如下
多进程进度条
在使用多进程处理任务的时候,通过tqdm可以实时查看每一个进程任务的处理情况
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
|
pandas中使用tqdm
1 2 3 4 5 6 7 8 9 |
|
递归使用进度条
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
|
注意
在使用tqdm
显示进度条的时候,如果代码中存在print
可能会导致输出多行进度条,此时可以将print
语句改为tqdm.write
,代码如下
1 2 3 |
|