日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > python >内容正文

python

python 进度条_六种酷炫Python运行进度条

發(fā)布時(shí)間:2023/12/15 python 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python 进度条_六种酷炫Python运行进度条 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

作者 |?行哥
來(lái)源 |?一行數(shù)據(jù)

之前行哥給大家推薦過(guò)一個(gè)windows神器,里面有個(gè)小功能是人生進(jìn)度條,可以看到2020年的進(jìn)度只剩下一半,那么你的代碼進(jìn)度還剩多少呢?

這不,行哥本文介紹了目前6種比較常用的進(jìn)度條,讓大家都能直觀地看到腳本運(yùn)行最新的進(jìn)展情況

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

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

  • 3.tpdm進(jìn)度條

  • 4.progress進(jìn)度條

  • 5.alive_progress進(jìn)度條

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

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

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

import?sysimport?timedef?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()進(jìn)度條1

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("執(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,"-"))進(jìn)度條2

3.tpdm進(jìn)度條

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

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

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

4.progress進(jìn)度條

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

import?timefrom?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()

相關(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)畫(huà)效果,需要使用pip進(jìn)行下載,代碼案例如下:

from?alive_progress?import?alive_bar
items?=?range(100)??????????????????#?retrieve?your?set?of?itemswith?alive_bar(len(items))?as?bar:???#?declare?your?expected?totalfor?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)行下載,代碼案例如下

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)以上就給大家介紹了 6 中有趣的進(jìn)度條實(shí)現(xiàn),感興趣的小伙伴可以加到自己的程序中哦!

總結(jié)

以上是生活随笔為你收集整理的python 进度条_六种酷炫Python运行进度条的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。