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

Python制作進(jìn)度條的幾種方法

 更新時(shí)間:2022年12月08日 08:52:58   作者:宋宋講編程  
如果你之前沒用過進(jìn)度條,八成是覺得它會(huì)增加不必要的復(fù)雜性或者很難維護(hù),其實(shí)不然。要加一個(gè)進(jìn)度條其實(shí)只需要幾行代碼,快跟隨小編一起學(xué)習(xí)學(xué)習(xí)吧

前言

如果你之前沒用過進(jìn)度條,八成是覺得它會(huì)增加不必要的復(fù)雜性或者很難維護(hù),其實(shí)不然。要加一個(gè)進(jìn)度條其實(shí)只需要幾行代碼。

from alive_progress import alive_bar; import time

在這幾行代碼中,我們可以看看如何在命令行腳本以及 PySimpleGUI UI 中添加進(jìn)度條。

下文將介紹 4 個(gè)常用的 Python 進(jìn)度條庫:

Progress

第一個(gè)要介紹的 Python 庫是 Progress。

你只需要定義迭代的次數(shù)、進(jìn)度條類型并在每次迭代時(shí)告知進(jìn)度條。

import timefrom progress.bar 
import IncrementalBarmylist = [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()

Progress 實(shí)現(xiàn)的進(jìn)度條效果如下:

Progressbar 的增量進(jìn)度條

如果你不喜歡該進(jìn)度條的格式,還可以從以下格式中挑選:

ProgressBar 支持的進(jìn)度條類型。

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

tqdm

下面我們看一下 tqdm 庫。

和之前見過的庫差不多,這兩行代碼也非常相似,在設(shè)置方面有一點(diǎn)點(diǎn)不同:

import timefrom tqdm 
import tqdmmylist = [1,2,3,4,5,6,7,8]
for i in tqdm(mylist): 
  time.sleep(1)

tqdm 實(shí)現(xiàn)的進(jìn)度條效果如下:

這個(gè)進(jìn)度條也提供了幾種選項(xiàng)。

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

Alive Progress

顧名思義,這個(gè)庫可以使得進(jìn)度條變得生動(dòng)起來,它比原來我們見過的進(jìn)度條多了一些動(dòng)畫效果。

從代碼角度來說比較相似:

from alive_progress import alive_barimport 
timemylist = [1,2,3,4,5,6,7,8]
with alive_bar(len(mylist)) as bar: 
  for i in mylist: 
    bar() 
    time.sleep(1)

進(jìn)度條的外觀和預(yù)期差不多:

這種進(jìn)度條有一些與眾不同的功能,使用起來會(huì)比較有趣,功能詳情可見項(xiàng)目:https://github.com/rsalmei/alive-progress

PySimpleGUI

用 PySimpleGUI 得到圖形化進(jìn)度條

我們可以加一行簡(jiǎn)單的代碼,在命令行腳本中得到圖形化進(jìn)度條。

為了實(shí)現(xiàn)上述內(nèi)容,我們需要的代碼是:

import PySimpleGUI as sgimport 
timemylist = [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)

PySimpleGUI 應(yīng)用程序中的進(jìn)度條項(xiàng)目作者之前曾經(jīng)在 GitHub 上討論過「如何快速啟動(dòng) Python UI,然后使用 UI 創(chuàng)建比較工具」。

在這個(gè)項(xiàng)目里,作者還討論了一下如何集成進(jìn)度條。

代碼如下:

import PySimpleGUI as sgimport 
timemylist = [1,2,3,4,5,6,7,8]
progressbar = [ [sg.ProgressBar(len(mylist), orientation= h , size=(51, 10), key= progressbar )]]
outputwin = [ [sg.Output(size=(78,20))]]
layout = [ [sg.Frame( Progress ,layout= progressbar)], [sg.Frame( Output , layout = outputwin)], [sg.Submit( Start ),sg.Cancel()]]
window = sg.Window( Custom Progress Meter , layout)
progress_bar = window[ progressbar ] while True: 
  event, values = window.read(timeout=10) 
  if event ==  Cancel  or event is None: 
    break 
  elif event ==  Start : 
    for i,item in enumerate(mylist): 
      print(item) 
      time.sleep(1) 
      progress_bar.UpdateBar(i + 1)window.close()

沒錯(cuò),在 Python 腳本中使用進(jìn)度條只需要幾行代碼,一點(diǎn)也不復(fù)雜。有了進(jìn)度條,以后也不用再猜測(cè)腳本運(yùn)行的怎么樣了。

到此這篇關(guān)于Python制作進(jìn)度條的幾種方法的文章就介紹到這了,更多相關(guān)Python制作進(jìn)度條內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

延庆县| 扬州市| 招远市| 洱源县| 青田县| 常山县| 平度市| 庆元县| 巴塘县| 崇仁县| 清丰县| 正镶白旗| 伽师县| 阳新县| 施甸县| 崇仁县| 仁怀市| 易门县| 辉南县| 武功县| 阿巴嘎旗| 安溪县| 大邑县| 内丘县| 阿鲁科尔沁旗| 措勤县| 乌拉特后旗| 沙洋县| 邵东县| 永兴县| 巨野县| 沭阳县| 晋江市| 娱乐| 孟连| 德钦县| 平江县| 铁岭市| 都江堰市| 泾川县| 紫金县|