3

用Python给代码安个进度条,太香了吧

 2 years ago
source link: https://blog.csdn.net/qq_36807888/article/details/121902791
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

用Python给代码安个进度条,太香了吧

相信大家对进度条一定不陌生了,比如在我们安装python库的时候可以看到下载的进度,此外在下载文件时也可以看到类似的进度条

比如下图这种:小小进度条也是有大大梦想的~~

图片

图片

用一个炫酷的进度条,来观察处理进度,也可以及时了解程序运行的情况,此外还可以用于显示时间,并告诉用户当前任务的执行进展。做到心中有数。

今天和大家分享一个进度条可视化库,它的名字叫做 tqdm ,可以帮助我们监测程序运行的进度,用户只需要封装可迭代对象即可

安装

我们使用 pip 直接进行安装:

pip install tqdm

检测

使用命令'pip show tqdm'检是否成功安装:

使用

tqdm 主要参数可选参数众多,我们先看一下常用的一些参数。

  • iterable: 可迭代的对象, 在手动更新时不需要进行设置

  • desc: str, 左边进度条的描述性文字

  • total: 总的项目数

  • leave: bool, 执行完成后是否保留进度条

  • file: 输出指向位置, 默认是终端, 一般不需要设置

  • ncols: 调整进度条宽度, 默认是根据环境自动调节长度, 如果设置为0, 就没有进度条, 只有输出的信息

  • unit: 描述处理项目的文字, 默认是’it’, 例如: 100 it/s, 处理照片的话设置为’img’ ,则为 100 img/s

  • unit_scale: 自动根据国际标准进行项目处理速度单位的换算, 例如 100000 it/s >> 100k it/s

  • colour: 进度条颜色,例如:‘green’, ‘#00ff00’。

直接将可迭代对象传入 tqdm()。

图片

或者直接使用range函数来代替。

图片

这里面的 tqdm(range()) 我们也可以用 tqdm 提供的 trange() 来代替,可以简化代码。

我们还可以使用 set_description()在进度条前面添加描述性内容,让其看起来更加的人性化。

除此之外,我们还可以使用update函数自定进度条比例,例如我们将100进度任务分为4次进度展示。

自定义进度条颜色

我们使用color = 'pink'来显示进度条颜色

图片

多重进度条

接下来,我们来演示一下多重循环的进度条。

这里我用两层 for 循环实现了嵌套,并且将内层的 参数 leave 设置为 False ,意思是内层的进度条每执行一次都会消失。并且给内循环设置绿色,外循环设置粉色。

我们来看看最终运行的效果:

图片

tqdm的使用方法是不是很简单,几行代码就能为我们的程序增色不少。心动不如行动,赶快用起来吧!有问题,咱们评论区间~~


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK