最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python實現(xiàn)進度條的多種實現(xiàn)

 更新時間:2021年04月29日 14:09:39   作者:IT之一小佬  
這篇文章主要介紹了python實現(xiàn)進度條的多種實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

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

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

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

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

示例代碼:

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

運行結(jié)果:

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

一、tqdm相關(guān)操作

 1、迭代對象處理

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

示例代碼:

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

運行結(jié)果:

2、觀察處理的數(shù)據(jù)

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

示例代碼:

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

運行結(jié)果:

3、pandas中使用tqdm

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

示例代碼:

import time
import pandas as pd
from 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

運行結(jié)果:

4、多進程進度條

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

示例代碼:

import time
from 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)

運行結(jié)果:

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

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

示例代碼1:

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

運行結(jié)果:

示例代碼2:

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

運行結(jié)果:

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

示例代碼3:

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

運行結(jié)果:

另外,我們還能通過set_descriptionset_postfix方法設(shè)置進度條顯示信息。

示例代碼:

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

運行結(jié)果:

令人震驚的是,當我們將進度條顯示的信息設(shè)置中文時,竟然不會出現(xiàn)亂碼?。。?!

示例代碼:

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

運行結(jié)果:

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

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

示例代碼:

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

運行結(jié)果:

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

示例代碼1:

import time
from tqdm import tqdm
for i in tqdm(range(100)):
    print("I'm tqdm!", end=' ')
    time.sleep(0.1)

運行結(jié)果:

示例代碼2:

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

運行結(jié)果:

到此這篇關(guān)于python實現(xiàn)進度條的多種實現(xiàn)的文章就介紹到這了,更多相關(guān)python 進度條內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python實現(xiàn)人工智能Ai摳圖功能

    python實現(xiàn)人工智能Ai摳圖功能

    這篇文章主要介紹了python實現(xiàn)人工智能Ai摳圖功能,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-09-09
  • 用Python實現(xiàn)插值算法

    用Python實現(xiàn)插值算法

    大家好,本篇文章主要講的是用Python實現(xiàn)插值算法,感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下
    2022-02-02
  • Python和Java進行DES加密和解密的實例

    Python和Java進行DES加密和解密的實例

    下面小編就為大家分享一篇Python和Java進行DES加密和解密的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-01-01
  • 解決Python3.7.0 SSL低版本導致Pip無法使用問題

    解決Python3.7.0 SSL低版本導致Pip無法使用問題

    這篇文章主要介紹了解決Python3.7.0 SSL低版本導致Pip無法使用問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-09-09
  • 使用DataFrame刪除行和列的實例講解

    使用DataFrame刪除行和列的實例講解

    下面小編就為大家分享一篇使用DataFrame刪除行和列的實例講解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-04-04
  • Python實現(xiàn)字符串格式化的方法小結(jié)

    Python實現(xiàn)字符串格式化的方法小結(jié)

    本篇文章主要介紹了Python實現(xiàn)字符串格式化的方法小結(jié),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-02-02
  • Python中使用gzip模塊壓縮文件的簡單教程

    Python中使用gzip模塊壓縮文件的簡單教程

    這篇文章主要介紹了Python中使用gzip模塊壓縮文件的簡單教程,本文的例子主要針對類UNIXZ系統(tǒng),需要的朋友可以參考下
    2015-04-04
  • 深入理解Python中的*args和**kwargs參數(shù)(示例代碼)

    深入理解Python中的*args和**kwargs參數(shù)(示例代碼)

    *args和**kwargs是Python函數(shù)編程中極其有用的特性,它們?yōu)楹瘮?shù)參數(shù)的處理提供了極大的靈活性和強大的功能,這篇文章主要介紹了Python中的*args和**kwargs參數(shù),需要的朋友可以參考下
    2024-06-06
  • Python設(shè)計實現(xiàn)的計算器功能完整實例

    Python設(shè)計實現(xiàn)的計算器功能完整實例

    這篇文章主要介紹了Python設(shè)計實現(xiàn)的計算器功能,結(jié)合完整實例形式分析了Python3.5實現(xiàn)計算器功能的正則、字符串及數(shù)值運算等相關(guān)操作技巧,需要的朋友可以參考下
    2017-08-08
  • 教你如何用python開發(fā)一款數(shù)字推盤小游戲

    教你如何用python開發(fā)一款數(shù)字推盤小游戲

    這篇文章主要介紹了教你如何用python開發(fā)一款數(shù)字推盤小游戲,文中有非常詳細的代碼示例,喜對歡玩小游戲的或者正在學習python小游戲開發(fā)的小伙伴們有很好的幫助,需要的朋友可以參考下
    2021-04-04

最新評論

富裕县| 厦门市| 萍乡市| 海宁市| 玉龙| 微博| 镇安县| 阆中市| 柏乡县| 扎赉特旗| 沂南县| 扬州市| 酒泉市| 蓬安县| 含山县| 萨嘎县| 南靖县| 富宁县| 西乌| 屯留县| 麦盖提县| 左权县| 景谷| 赞皇县| 甘德县| 辽宁省| 丰原市| 贡觉县| 疏附县| 平泉县| 泽普县| 荔浦县| 漯河市| 台北县| 庆元县| 衡水市| 衡山县| 镇赉县| 独山县| 新营市| 浑源县|