亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

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

python實現進度條的多種實現

瀏覽:2日期:2022-06-20 17:28:04

有時候在使用Python處理比較耗時操作的時候,為了便于觀察處理進度,這時候就需要通過進度條將處理情況進行可視化展示,以便我們能夠及時了解情況。這對于第三方庫非常豐富的Python來說,想要實現這一功能并不是什么難事。

tqdm就能非常完美的支持和解決這些問題,可以實時輸出處理進度而且占用的CPU資源非常少,支持循環處理、多進程、遞歸處理、還可以結合linux的命令來查看處理情況,等進度展示。

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

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

示例代碼:

from tqdm import tqdm for i in tqdm(range(int(9e7))): pass

運行結果:

python實現進度條的多種實現

python實現進度條的多種實現

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

一、tqdm相關操作 1、迭代對象處理

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

示例代碼:

import timefrom tqdm import tqdm for i in tqdm(range(100)): time.sleep(0.1) pass

運行結果:

python實現進度條的多種實現

2、觀察處理的數據

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

示例代碼:

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

運行結果:

python實現進度條的多種實現

3、pandas中使用tqdm

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

示例代碼:

import timeimport pandas as pdfrom tqdm import tqdm df = 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’]): time.sleep(2) pass

運行結果:

python實現進度條的多種實現

4、多進程進度條

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

示例代碼:

import timefrom tqdm import tqdm for i in tqdm(range(5), ascii=False, desc='1st process'): # ascii = True 時為## for j in tqdm(range(5), ascii=True, desc='2st process'):time.sleep(0.1)

運行結果:

python實現進度條的多種實現

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

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

示例代碼1:

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

運行結果:

python實現進度條的多種實現

示例代碼2:

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

運行結果:

python實現進度條的多種實現

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

示例代碼3:

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

運行結果:

python實現進度條的多種實現

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

示例代碼:

import timefrom tqdm import trangefrom random import random, randint with trange(100) as t: for i in t:# 設置進度條左邊顯示的信息# 注意:代碼中的GEN是可以手動換成其它內容的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)

運行結果:

python實現進度條的多種實現

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

示例代碼:

import timefrom tqdm import trangefrom random import random, randint with trange(100) as t: for i in t:# 設置進度條左邊顯示的信息# 注意:代碼中的GEN是可以手動換成其它內容的t.set_description('進度 %i' % i)# 設置進度條右邊顯示的信息# 注意:此處代碼中的gen lr lst是可以手動換成其它內容的t.set_postfix(損失=random(), 隨機=randint(1, 999), 名字='h', 列表=[1, 2])time.sleep(0.1)

運行結果:

python實現進度條的多種實現

6.tqdm(range(n))替換為trange(n)

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

示例代碼:

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

運行結果:

python實現進度條的多種實現

7.在jupyter notebook中使用進度條tqdm:

示例代碼1:

import timefrom tqdm import tqdmfor i in tqdm(range(100)): print('I’m tqdm!', end=’ ’) time.sleep(0.1)

運行結果:

python實現進度條的多種實現

示例代碼2:

import timefrom tqdm import tqdm_notebook for i in tqdm_notebook(range(100), desc='demo'): time.sleep(0.1) print('I’m tqdm_notebook!', end=’ ’)

運行結果:

python實現進度條的多種實現

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

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 欧美一区精品二区三区 | 国产精品秋霞午夜 | 日韩国产免费一区二区三区 | 窝窝午夜色视频国产精品东北 | 黄色三级视频在线 | 天天久久| 免费观看欧美精品成人毛片 | 麻豆成人传媒一区二区 | 99久久精品免费看国产麻豆 | 中国一级做a爰片久久毛片 中国一级做a爱片免费 | 日本精品久久久免费高清 | 97精品在线 | 午夜在线播放免费人成无 | 日韩孕交japanese孕交 | 国内精品视频一区二区三区 | 免费视频爱爱太爽了 | 老妇综合久久香蕉蜜桃 | 1000部18未成人禁止国产 | 男女性高清爱潮视频免费观看 | 国产成人免费在线观看 | 国产视频福利 | 亚洲免费影院 | 国产亚洲精品久久午夜 | 毛片黄色片 | 青青艹视频在线 | 国内精品91最新在线观看 | 欧美aaaav免费大片 | 国产大学生露脸激情 | 国产精品视频网站 | 国产视频在线观看免费 | 日本黄色一区 | 欧美毛片免费观看 | 亚洲三级影视 | 国产高清免费在线观看 | 亚洲国产日韩欧美一区二区三区 | 国产亚洲欧美日韩综合综合二区 | 国产精品久久九九 | 美国老黑一级毛片免费的大黄 | 操片免费 | 蕾丝视频在线看片国产 | 国产成人精品视频一区二区不卡 |