今天在知乎上看问题看到有人问如何展示程序进度,之前我在写爬虫好像都是自己使用print来显示进度,对于自己写的代码我还是很熟悉的,没啥问题。但是当我们把代码交给其他人使用,如果有进度条显示会更友好一些。tqdm是一个小巧、可扩展的进度条python库,在github的star数高达8K。
安装
在命令行中的安装命令
pip install tqdm
在jupyter notebeook的Cell中的安装命令
!pip install tqdm
一、使用
tqdm实现进度条效果有多重形式,最常用的就是下面给出的三种
1.1 基于可迭代对象
将可迭代对象放入 tqdm.tqdm函数中
, 可迭代对象长度为n,则进度条有n个进度。
from tqdm
100%|██████████| 2/2 [00:01<00:00, 1.99it/s]
from tqdm
100%|██████████| 4/4 [00:02<00:00, 1.98it/s]
trange(i)是tqdm(range(i))的简化版
from tqdm
100%|██████████| 5/5 [00:02<00:00, 1.99it/s]
我们可以将进度条先实例化,再放到for循环体中,这样就可以做一些操作
= tqdm
程序进度 e: 100%|██████████| 5/5 [00:02<00:00, 1.97it/s]
1.2 手动
from tqdm
10%|█ | 10/100 [00:04<00:44, 2.04it/s]
from tqdm
20%|██ | 20/100 [00:09<00:40, 1.99it/s]
from tqdm
40%|████ | 40/100 [00:00<00:00, 129055.51it/s]
如果不适用with语句,我们记得在代码后close掉。
import time
pbar
10%|█ | 10/100 [00:00<00:08, 10.03it/s]
tqdm常见参数
我们看看tqdm类的各个参数及其作用。
class
iterable: 待修饰的可迭代对象,上面所有的tqdm使用例子实际上都是iterable参数起作用。默认接受第一个参数
desc: 进度条里加入前缀
total: 进度条长度,比如total=100,进度条完整的要更新一百次。
import time
pbar
10%|█ | 10/100 [00:00<00:09, 9.92it/s]
import time
pbar
大邓: 10%|█ | 10/100 [00:00<00:09, 9.93it/s]
精选文章
为什么你要为2020,而不是2019做计划?
余额宝百万体验金等你来领
我是如何通过python挣外快的
PySimpleGUI: 开发自己第一个软件
自然语言处理之LDA主题模型
100G 文本分析语料资源(免费下载)
15个最好的数据科学领域Python库
使用Pandas更好的做数据科学
抓取8w技能交换公告信息
【视频讲解】Scrapy递归抓取简书用户信息
大邓强力推荐-jupyter notebook使用小技巧
数据清洗 常用正则表达式大全
Python 3.7中dataclass的终极指南(一)
Python 3.7中dataclass的终极指南(二)
[计算消费者的偏好]推荐系统与协同过滤、奇异值分解
机器学习: 识别图片中的数字
应用PCA降维加速模型训练
如何从文本中提取特征信息?
文本数据标注工具-YEDDA
使用sklearn做自然语言处理-1
使用sklearn做自然语言处理-2
Python圈中的符号计算库-Sympy
Python中处理日期时间库的使用方法