文章目录(Table of Contents)
简介
在使用 Python 写循环的时候,对于一些比较长的步骤,我们希望可以实时显示一个进度条,让我看可以看到目前的进展。于是,tqdm 这个库就可以帮助我们实现这个进度条(Instantly make your loops show a smart progress meter - just wrap any iterable with tqdm(iterable)
, and you're done!)。
这一篇会简单介绍一下 tqdm 这个库的使用,可以在循环的时候加上进度条,也可以在读取文件的时候加上进度条。关于 tqdm的参考资料,可以直接看他的 Github 的仓库链接,Github-tqdm。
tqdm 使用介绍
可视化循环
我们只需要在循环外面加上 tqdm,即可对 loop 进行可视化。
- import tqdm
- for i in tqdm.tqdm(range(1000)):
- pass
运行上面的代码,我们可以得到下面的可视化的效果:
我们可以对上面的 tqdm 进行一些设置,下面是两个常见的设置:
- ncols : The width of the entire output message. If specified, dynamically resizes the progressbar to stay within this bound. If unspecified, attempts to use environment width. The fallback is a meter width of 10 and no limit for the counter and statistics. If 0, will not print any meter (only stats). => 设置显示的长度
- ascii : If unspecified or False, use unicode (smooth blocks) to fill the meter. The fallback is to use ASCII characters " 123456789#". => 设置填充的内容
读取文件过程的可视化
我们在对一些大文件进行操作的时候,同样可以使用 tqdm 来进行可视化。我们首先获得该文件总的大小,接着实时更新每一次文件处理的位置即可,下面是一个可视化文件处理过程的例子:
- with tqdm.tqdm(total = os.path.getsize(file_name)) as pbar:
- with open(file_name, 'r') as f:
- for line in f:
- pbar.update(len(line)) # 显示文件处理的进度
- pass
- 微信公众号
- 关注微信公众号
- QQ群
- 我们的QQ群号
评论