【居老师学习笔记】用tqdm实现代码显示进度条-python

【居老师学习笔记】用tqdm实现代码显示进度条-python
今天看到(公众号:大邓和他的Python)发了一篇<如何让python代码显示进度信息?>hin有意思~学习下

要用到一个库——tqdm
在执行需要多次迭代耗时长的代码时,可以利用tqdm库来显示任务进度条。常用的是tqdm模块中的tqdm和trange。
那就在命令行中安装下吧~

pip install tqdm

如何使用呢?

1.tqdm.tqdm(可迭代对象)

将迭代对象放入tqdm.tqdm()中,动态监控迭代对象进度,迭代的对象有几个,进度条就有多长,例子中有6个字符串,因此进度条就(1/6)、(2/6)、(3/6)、(4/6)、(5/6)、(6/6)的滚~

from tqdm import tqdm
import time

# 进度条实例1,进度条有6辣么长
text = ""
insert = ['P', 'Y', 'T', 'H', 'O', 'N']
for i in tqdm(insert):
    text = text + i
    time.sleep(0.2)   # 让进度条慢点走~

# 进度条实例2,进度条有10辣么长
for i in tqdm(range(10)):
    pass
    time.sleep(0.2)

【居老师学习笔记】用tqdm实现代码显示进度条-python
四不四超简单哈哈哈哈哈~
还可以将进度条实例化,这样我们可以美化我们的进度条~

from tqdm import tqdm
import time

# 进度条实例1,进度条有6辣么长
text = ""
insert = ['P', 'Y', 'T', 'H', 'O', 'N']
progress_bar = tqdm(insert)

for char in progress_bar:
    progress_bar.set_description("I‘m 进度条:{}".format(char))  #丰富下!
    time.sleep(0.2)

【居老师学习笔记】用tqdm实现代码显示进度条-python

2.不自动的显示,限制他!

当你的代码有很多个循环或很多个迭代时,你可以自主定义执行到哪一步约完成了百分之多少,如我有10个循环,当我循环完第5个的时候约完成了整个程序的80%,那么进度条就会停在80%。

from tqdm import tqdm
import time

# 执行10%
with tqdm(total=100) as pbar:
    for i in range(10):
        pbar.update(1)
        time.sleep(0.5)

# 执行20%
with tqdm(total=100) as pbar:
    for i in range(20):
        pbar.update(1)
        time.sleep(0.5)

# 执行40%
with tqdm(total=100) as pbar:
    for i in range(20):
        pbar.update(2)      #每次更新2次
        time.sleep(0.5)

【居老师学习笔记】用tqdm实现代码显示进度条-python

3.tqdm的一些常用参数
class tqdm(object):
  def __init__(self, iterable=None, desc=None, total=None):

iterable:迭代对象
desc:进度条名字
total:进度条总数一般为100

from tqdm import tqdm
import time

# 进度条实例1,进度条有6辣么长
text = ""
insert = ['P', 'Y', 'T', 'H', 'O', 'N']

progress_bar = tqdm(iterable=insert, total=50, desc='居居')

for i in progress_bar:
    text = text + i
    time.sleep(0.2)

progress_bar.close()

【居老师学习笔记】用tqdm实现代码显示进度条-python
最后表扬下认真学习的自己~

【居老师学习笔记】用tqdm实现代码显示进度条-python