成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

python tqdm實現進度條的示例代碼

瀏覽:2日期:2022-07-05 18:08:24

一、前言

quad quad 有時候在使用Python處理比較耗時操作的時候,為了便于觀察處理進度,這時候就需要通過進度條將處理情況進行可視化展示,以便我們能夠及時了解情況。這對于第三方庫非常豐富的Python來說,想要實現這一功能并不是什么難事。quad quad tqdm就能非常完美的支持和解決這些問題,可以實時輸出處理進度而且占用的CPU資源非常少,支持循環處理、多進程、遞歸處理、還可以結合linux的命令來查看處理情況,等進度展示。

我們先來看一下進度條的效果。

from tqdm import tqdmfor i in tqdm(range(int(9e6))): pass

python tqdm實現進度條的示例代碼

可以看到,當我們的代碼的運行需要較長時間時,進度條可以很好的幫助我們了解整個代碼的運行進度。

1、安裝

tqdm的安裝十分簡單,只需要通過pip或conda就可以安裝。

2、pip安裝

pip install tqdm

3、conda安裝

conda install -c conda-forge tqdm

二、tqdm相關操作

1、迭代對象處理

對于可以迭代的對象都可以使用下面這種方式,來實現可視化進度,非常方便。

from tqdm import tqdmimport timefor i in tqdm(range(100)): time.sleep(0.1) pass

100%|????????????????????????????????????????????????????????????????????????????????| 100/100 [00:10<00:00, 9.88it/s]

2、觀察處理的數據

通過tqdm提供的set_description方法可以實時查看每次處理的數據。

from tqdm import tqdmimport timepbar = tqdm(['A','B','C','D','E','F'])for c in pbar: time.sleep(1) pbar.set_description('Processing %s'%c)

python tqdm實現進度條的示例代碼

3、pandas中使用tqdm

在pandas中對大量數據進行相關操作或者遍歷表格的行列時,我們可以使用tqdm來了解代碼運行情況。

import pandas as pddf = pd.DataFrame({ ’Month’:[1,2,3,4,5,2,3,4,5,1,2,3,4], ’Name’:[’張三’,’張三’,’張三’,’張三’,’張三’,’李四’,’李四’,’李四’,’李四’,’王五’,’王五’,’王五’,’王五’], ’Sex’:[’男’,’男’,’女’,’女’,’女’,’男’,’男’,’男’,’男’,’女’,’女’,’女’,’女’]})for i in tqdm([’Month’,’Name’,’Sex’]): pass

100%|??????????????????????????????????????????????????????????????????????????????????| 3/3 [00:00<00:00, 4707.41it/s]

4、多進程進度條

在使用多進程或者嵌套循環處理任務的時候,我們通過tqdm可以實時查看每一個進程任務的處理情況

from tqdm import tqdmimport timefor i in tqdm(range(5), ascii=True,desc='1st process'): for j in tqdm(range(5), ascii=True,desc='2nd process'): time.sleep(0.01)

1st process: 0%|| 0/5 [00:00<?, ?it/s]2nd process: 0%|| 0/5 [00:00<?, ?it/s]2nd process: 100%|#######################################################################| 5/5 [00:00<00:00, 94.27it/s]2nd process: 0%|| 0/5 [00:00<?, ?it/s]1st process: 40%|############################4 | 2/5 [00:00<00:00, 18.09it/s]2nd process: 0%|| 0/5 [00:00<?, ?it/s]2nd process: 100%|#######################################################################| 5/5 [00:00<00:00, 93.95it/s]2nd process: 0%|| 0/5 [00:00<?, ?it/s]1st process: 80%|########################################################8 | 4/5 [00:00<00:00, 17.99it/s]2nd process: 0%|| 0/5 [00:00<?, ?it/s]1st process: 100%|#######################################################################| 5/5 [00:00<00:00, 17.86it/s]

5、自定義進度條顯示信息

通過update方法可以控制每次進度條更新的進度。

from tqdm import tqdmimport time#total參數設置進度條的總長度為100with tqdm(total=100) as pbar: for i in range(100): time.sleep(0.05) #每次更新進度條的長度為1 pbar.update(1)

python tqdm實現進度條的示例代碼

除了上述方法之外,我們還能通過另外一種方法來實現操作。

from tqdm import tqdmimport time#total參數設置進度條的總長度為100pbar = tqdm(total=100)for i in range(100): time.sleep(0.05) #每次更新進度條的長度為1 pbar.update(1)#關閉占用的資源pbar.close()

python tqdm實現進度條的示例代碼

另外,我們還能通過set_description和set_postfix方法設置進度條顯示信息。

from tqdm import trangefrom random import random,randintimport timewith trange(100) as t: for i in t: #設置進度條左邊顯示的信息 #注意:代碼中的HVAE是可以手動換成其他內容的 t.set_description('GEN %i'%i) #設置進度條右邊顯示的信息 #注意:此處代碼中的gen lr lst是可以手動換成其他內容的 t.set_postfix(loss=random(),gen=randint(1,999),lr='h',lst=[1,2]) time.sleep(0.1)

GEN 99: 100%|???????????????????????????????| 100/100 [00:10<00:00, 9.77it/s, gen=190, loss=0.00811, lr=h, lst=[1, 2]]

令人震驚的是,當我們將進度條顯示的信息設置為中文時,竟然不會出現亂碼!!!!

from tqdm import trangefrom random import random,randintimport timewith trange(100) as t: for i in t: #設置進度條左邊顯示的信息 t.set_description('進度 %i'%i) #設置進度條右邊顯示的信息 t.set_postfix(loss=random(),隨機=randint(1,999),名字='h',列表=[1,2]) time.sleep(0.1)

進度 99: 100%|????????????????????????????????????| 100/100 [00:10<00:00, 9.75it/s, loss=0.975, 列表=[1, 2], 名字=h, 隨機=469]

三、其他相關操作

​ Last but not least!!最后的內容是十分重要的!!

1、我們在使用tqdm的時候,可以將tqdm(range(n))替換為trange(n),讓你的代碼看起來更加簡潔而又高大上!

from tqdm import tqdm,trangeimport timefor i in trange(100): time.sleep(0.1) pass

100%|????????????????????????????????????????????????????????????????????????????????| 100/100 [00:10<00:00, 9.90it/s]

2、當我們在jupyter notebook中使用進度條時,我們會發現整個進度條十分的難看,而在可能會出現多條進度條的情況,這樣會讓我們的代碼顯得十分的難看,這顯然不是我們想要得到的結果。

我們先來感受一下,這種丑丑的運行結果。

from tqdm import tqdmfor i in tqdm(range(int(200))): print(’tqdm’,end=’ ’)

0%| | 0/200 [00:00<?, ?it/s]tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm 68%|?????????????????????????????????????????????????????? | 137/200 [00:00<00:00, 1360.43it/s]tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm tqdm 100%|??????????????????????????????????????????????????????????????????????????????| 200/200 [00:00<00:00, 1337.14it/s]

quad 可以看到,上面的代碼我們僅僅打印了兩百次,整個運行結果就有多個進度條,整體的視覺效果特別差。如果當我們需要進行成千上萬次迭代時,整個運行結果將會不堪入目,比我們未使用進度條時的結果更加難看,顯然這不是我們想看到的。

tqdm針對jupyter notebook添加了專門的進度條美化方法,使用tqdm_notebook()方法,我們看看效果:

from tqdm import tqdm_notebookimport timefor i in tqdm_notebook(range(100),desc=’demo:’): time.sleep(0.01) print(’tqdm’,end=’ ’)

python tqdm實現進度條的示例代碼

可以看到,整個運行結果立刻變得美觀而又清晰了!

​ quad tqdm在阿拉伯語中的意思是“進展”,是python中一個快速、擴展性強的進度條工具庫,能讓我們了解代碼的運行進度,也能讓我們的運行結果看起來顯得更加美觀而又高大上!! 喜歡的小伙伴趕緊用起來吧!!

到此這篇關于python tqdm實現進度條的示例代碼的文章就介紹到這了,更多相關python tqdm進度條內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
欧美老年两性高潮| 久久一区亚洲| 91免费国产视频网站| 国产精品亚洲综合久久| 日韩精品在线看片z| 亚洲国产美女搞黄色| av在线不卡观看免费观看| 狂野欧美性猛交xxxx巴西| 国产日韩精品一区| 老司机午夜精品| 99re6热在线精品视频播放速度| 91精品国产欧美一区二区成人 | 极品少妇一区二区| 亚洲久久在线| 91久久久免费一区二区| 国产精品大尺度| 成人国产精品免费观看动漫| 91成人免费在线| 亚洲人成人一区二区在线观看| 国产精品一二三四| 久久一区欧美| 一区二区三区**美女毛片| 欧美精品激情| 久久天天做天天爱综合色| 久久99精品一区二区三区三区| 亚洲欧洲日本国产| 久久老女人爱爱| 国产乱码一区二区三区| 久久综合中文| 一级做a爱片久久| 欧美国产三级| 26uuu精品一区二区三区四区在线 26uuu精品一区二区在线观看 | 日韩va欧美va亚洲va久久| 最新日韩欧美| 久久久久久麻豆| 国产一区二区视频在线| 一本到三区不卡视频| 国产精品久久久久久久久久久免费看 | 亚洲欧美在线视频观看| 99精品视频在线播放观看| 在线观看av不卡| 亚洲激情av在线| 国内成人在线| 久久丝袜美腿综合| 成人激情动漫在线观看| 7777精品伊人久久久大香线蕉超级流畅| 日韩黄色在线观看| 久久亚洲影院| 亚洲成人资源网| 亚洲视频一区| 日韩午夜激情免费电影| 精品写真视频在线观看| 亚洲欧美日韩综合一区| 亚洲欧美自拍偷拍色图| 好看的亚洲午夜视频在线| 国产欧美日本一区视频| 欧美精品一区二区视频 | 日韩欧美国产1| 久久精品二区亚洲w码| 色8久久人人97超碰香蕉987| 午夜精品福利久久久| 亚洲精品在线视频观看| 亚洲激情成人在线| 亚洲自啪免费| 午夜精品久久久久久| 国产女主播一区二区| 亚洲综合一区在线| 国产午夜精品一区二区三区欧美 | 欧美高清在线精品一区| 91麻豆免费看片| 国产欧美精品一区二区色综合| 欧美视频在线观看| 中文字幕在线不卡一区| 亚洲日本激情| 亚洲高清免费观看| 久久狠狠一本精品综合网| 亚洲国产欧美日韩另类综合| 久久亚洲欧洲| 精品在线亚洲视频| 在线不卡中文字幕| 亚洲精品第一国产综合野| 国产欧美三级| 亚洲va国产天堂va久久en| 999亚洲国产精| 亚洲精品一卡二卡| 亚洲欧美日韩一区在线观看| 日本不卡不码高清免费观看| 欧美三片在线视频观看| 国产伦精品一区二区三区免费 | 香蕉成人啪国产精品视频综合网 | 久久都是精品| 美女一区二区三区在线观看| 色综合久久99| 九九热在线视频观看这里只有精品| 欧美丰满少妇xxxxx高潮对白 | 色综合视频一区二区三区高清| 韩国av一区二区| 在线观看91精品国产入口| 国产一区二区三区av电影| 欧美成人bangbros| 欧美日韩网址| 亚洲影院在线观看| 在线欧美小视频| 不卡高清视频专区| 日韩毛片精品高清免费| 久久亚洲综合网| 国产乱一区二区| 日本一区二区视频在线观看| 一区二区三区四区五区精品| 日韩成人午夜精品| 91精品国产入口| 欧美视频在线观看| 亚洲午夜免费电影| 欧美视频在线播放| 99久久精品免费观看| 亚洲精品国产a久久久久久| 久久综合婷婷| 国产69精品久久久久毛片| 欧美经典一区二区| 男人的天堂成人在线| 国产成人综合在线播放| 中文字幕一区二区三区四区| 色综合久久六月婷婷中文字幕| 国产精品一区二区不卡| 国产精品家庭影院| 欧美伊人久久久久久久久影院| 福利一区福利二区| 欧美精品一区二区精品网| 宅男噜噜噜66一区二区66| 久久亚洲免费视频| 亚洲国产精品一区| 亚洲一区影音先锋| 99riav久久精品riav| 婷婷国产v国产偷v亚洲高清| 卡一卡二国产精品 | 国产三级一区二区| 日本韩国欧美国产| 蜜桃精品久久久久久久免费影院| 伊人成人在线| 亚洲精品国产日韩| 日韩vs国产vs欧美| 不卡视频在线观看| 亚洲欧美日韩视频二区| 成人免费视频一区二区| 亚洲免费在线播放| 热久久久久久久| 成人动漫视频在线| 成人精品视频一区二区三区尤物| 欧美日韩美少妇 | 欧美日韩精品一区| 鲁大师成人一区二区三区 | 在线观看成人av电影| 欧美人牲a欧美精品| 91精品福利在线一区二区三区| 亚洲欧美日韩精品久久久久| 欧美人体做爰大胆视频| 久久精品欧洲| 亚洲伦理一区| 激情综合在线| 国产精品二区影院| 欧美激情一区| 99国产一区二区三精品乱码| 国产经典欧美精品| 国产东北露脸精品视频| 国产精品亚洲成人| 国产精品一区不卡| 韩国欧美一区二区| 久久国产尿小便嘘嘘尿| 香蕉久久一区二区不卡无毒影院| 亚洲精品伦理在线| 亚洲黄色免费电影| 亚洲精品日产精品乱码不卡| 亚洲丝袜制服诱惑| 亚洲视频一区二区免费在线观看 | 久久久久国产精品一区二区 | 欧美在线色视频| 欧美三级中文字幕在线观看| 久久综合久久久| 色婷婷精品久久二区二区蜜臂av | 亚洲女人av| 亚洲一区二区三区欧美| 国产日韩欧美在线播放不卡| 1024成人| 国产日韩欧美一区在线 | 2020国产精品| 欧美成人女星排名| www久久久久| 国产婷婷色一区二区三区四区| 国产情人综合久久777777| 国产精品美女久久久久久2018| 亚洲国产精品成人综合| 国产精品电影一区二区| 最新日韩av在线| 亚洲精品中文在线| 偷窥国产亚洲免费视频| 蜜桃av一区二区| 国产成人综合在线观看| 97久久精品人人做人人爽 | 国产综合色一区二区三区| 极品中文字幕一区|