溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

在Jupyter notebook 中如何制作進(jìn)度條

發(fā)布時(shí)間:2022-01-17 09:27:56 來(lái)源:億速云 閱讀:345 作者:柒染 欄目:大數(shù)據(jù)

這篇文章將為大家詳細(xì)講解有關(guān)在Jupyter notebook 中如何制作進(jìn)度條,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。

1. 普通進(jìn)度條

在代碼迭代運(yùn)行中可以自己進(jìn)行統(tǒng)計(jì)計(jì)算,并使用格式化字符串輸出代碼運(yùn)行進(jìn)度

import sys
import time
def progress_bar():
    for i in range(1, 101):
        print("\r", end="")
        print("Download progress: {}%: ".format(i), "▋" * (i // 2), end="")
        sys.stdout.flush()
        time.sleep(0.05)
progress_bar()

在Jupyter notebook 中如何制作進(jìn)度條

2. 帶時(shí)間的進(jìn)度條

導(dǎo)入time模塊來(lái)計(jì)算代碼運(yùn)行的時(shí)間,加上代碼迭代進(jìn)度使用格式化字符串來(lái)輸出代碼運(yùn)行進(jìn)度

import time
scale = 50
print("開(kāi)始運(yùn)行".center(scale // 2,"-"))
start = time.perf_counter()
for i in range(scale + 1):
    a = "*" * i
    b = "." * (scale - i)
    c = (i / scale) * 100
    dur = time.perf_counter() - start
    print("\r{:^3.0f}%[{}->{}]{:.2f}s".format(c,a,b,dur),end = "")
    time.sleep(0.1)
print("\n"+"運(yùn)行結(jié)束".center(scale // 2,"-"))

在Jupyter notebook 中如何制作進(jìn)度條

3. tpdm進(jìn)度條

這是一個(gè)專門生成進(jìn)度條的工具包,可以使用pip在終端進(jìn)行下載,當(dāng)然還能切換進(jìn)度條風(fēng)格

from time import sleep
from tqdm import tqdm
# 這里同樣的,tqdm就是這個(gè)進(jìn)度條最常用的一個(gè)方法
# 里面存一個(gè)可迭代對(duì)象
for i in tqdm(range(1, 500)):
   # 模擬你的任務(wù)
   sleep(0.01)
sleep(0.5)

在Jupyter notebook 中如何制作進(jìn)度條

參考: 相關(guān)文檔:https://tqdm.github.io/

4. progress進(jìn)度條

你只需要定義迭代的次數(shù)、進(jìn)度條類型并在每次迭代時(shí)告知進(jìn)度條即可,具體代碼案例如下

# pip install progress

from alive_progress import alive_bar
items = range(100)                  # retrieve your set of items
with alive_bar(len(items)) as bar:   # declare your expected total
    for item in items:               # iterate as usual
        # process each item
        bar()
        time.sleep(0.1)

參考: 相關(guān)文檔:https://pypi.org/project/progress/1.5/

5. alive_progress進(jìn)度條

顧名思義,這個(gè)庫(kù)可以使得進(jìn)度條變得生動(dòng)起來(lái),它比原來(lái)我們見(jiàn)過(guò)的進(jìn)度條多了一些動(dòng)畫效果,需要使用pip進(jìn)行下載,代碼案例如下:

# pip install progress

from alive_progress import alive_bar
items = range(100)                  # retrieve your set of items
with alive_bar(len(items)) as bar:   # declare your expected total
    for item in items:               # iterate as usual
        # process each item
        bar()
        time.sleep(0.1)

參考: 相關(guān)文檔:https://github.com/rsalmei/alive-progress

6. 可視化進(jìn)度條

用 PySimpleGUI 得到圖形化進(jìn)度條,我們可以加一行簡(jiǎn)單的代碼,在命令行腳本中得到圖形化進(jìn)度條,也是使用pip進(jìn)行下載,代碼案例如下

# pip install PySimpleGUI

import PySimpleGUI as sg
import time
mylist = [1,2,3,4,5,6,7,8]
for i, item in enumerate(mylist):
    sg.one_line_progress_meter('This is my progress meter!', i+1, len(mylist), '-key-')
    time.sleep(1)

參考:一行數(shù)據(jù)

1. 普通進(jìn)度條

# 普通進(jìn)度條

import sys
import time
def progress_bar():
    for i in range(1, 101):
        print("\r", end="")
        print("Download progress: {}%: ".format(i), "▋" * (i // 2), end="")
        sys.stdout.flush()
        time.sleep(0.05)
progress_bar()

在Jupyter notebook 中如何制作進(jìn)度條

2. 帶時(shí)間的進(jìn)度條

# 帶時(shí)間的進(jìn)度條

import time
scale = 50
print("執(zhí)行開(kāi)始,祈禱不報(bào)錯(cuò)".center(scale // 2,"-"))
start = time.perf_counter()
for i in range(scale + 1):
    a = "*" * i
    b = "." * (scale - i)
    c = (i / scale) * 100
    dur = time.perf_counter() - start
    print("\r{:^3.0f}%[{}->{}]{:.2f}s".format(c,a,b,dur),end = "")
    time.sleep(0.1)
print("\n"+"執(zhí)行結(jié)束,萬(wàn)幸".center(scale // 2,"-"))

在Jupyter notebook 中如何制作進(jìn)度條

3.tpdm進(jìn)度條

# tpdm進(jìn)度條

from time import sleep
from tqdm import tqdm
# 這里同樣的,tqdm就是這個(gè)進(jìn)度條最常用的一個(gè)方法
# 里面存一個(gè)可迭代對(duì)象
for i in tqdm(range(1, 500)):
   # 模擬你的任務(wù)
   sleep(0.01)
sleep(0.5)

在Jupyter notebook 中如何制作進(jìn)度條

4. progress進(jìn)度條

# progress進(jìn)度條

import time
from progress.bar import IncrementalBar
mylist = [1,2,3,4,5,6,7,8]
bar = IncrementalBar('Countdown', max = len(mylist))
for item in mylist:
    bar.next()
    time.sleep(1)
    bar.finish()

在Jupyter notebook 中如何制作進(jìn)度條

5. alive_progress進(jìn)度條

# alive_progress進(jìn)度條

from alive_progress import alive_bar
items = range(100)                  # retrieve your set of items
with alive_bar(len(items)) as bar:   # declare your expected total
    for item in items:               # iterate as usual
        # process each item
        bar()
        time.sleep(0.1)

在Jupyter notebook 中如何制作進(jìn)度條

6. 可視化進(jìn)度條

# 可視化進(jìn)度條

import PySimpleGUI as sg
import time
mylist = [1,2,3,4,5,6,7,8]
for i, item in enumerate(mylist):
    sg.one_line_progress_meter('This is my progress meter!', i+1, len(mylist), '-key-')
    time.sleep(1)

在Jupyter notebook 中如何制作進(jìn)度條

在Jupyter notebook 中如何制作進(jìn)度條

關(guān)于在Jupyter notebook 中如何制作進(jìn)度條就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI