摘要:對于開發或者運維來說,使用去完成一些跑批任務,或者做一些監控事件是非常正常的情況。
對于開發或者運維來說,使用Python去完成一些跑批任務,或者做一些監控事件是非常正常的情況。那么如何有效的監控任務的進度,除了在任務中加上log外,還能不能有另一種方式來了解任務進展到哪一步了呢?
這就是今天我們來了解的內容,進度條
1. 標準輸出首先說一下在操作系統中,都有哪些控制符:
r: 將光標移動到當前行的首位而不換行;
n:將光標移動到下一行,并不移動到首位;
rn:將光標移動到下一行首位。
那讓我們來看下如何通過python來將標準輸出中添加進度條吧
import sys import time def progress_bar(total): """ 進度條效果 """ # 獲取標準輸出 _output = sys.stdout # 通過參數決定你的進度條總量是多少 for count in range(0, total + 1): # 這里的second只是作為工作量的一種代替 # 這里應該是有你的主程序,main() _second = 0.1 # 模擬業務的消耗時間 time.sleep(_second) # 輸出進度條 _output.write(f" complete percent:{count:.0f}") # 將標準輸出一次性刷新 _output.flush() progress_bar(100)
來看下實際效果,這里我錄了一段gif
tqdm是一個快速、擴展性強的進度條工具庫,它提供了非常多的接口,有興趣的小伙伴可以了解一下。githup地址是: https://github.com/tqdm/tqdm
我們來看下,如何使用tqdm模塊來實現進度條
a. 首先是安裝,非常簡單
pip install tqdm
b. 接下來就是操作啦
from time import sleep from tqdm import tqdm # 這里同樣的,tqdm就是這個進度條最常用的一個方法 # 里面存一個可迭代對象 for i in tqdm(range(1, 500)): # 模擬你的任務 sleep(0.01)
是不是看到這里發現,tqdm非常的簡單呢?
這只是一個例子啦,他也可以非常的復雜,同時你也支持多線程、多進程,還有pandas哦~來一個多進程的感受下吧~
關注公眾號:「Python專欄」,后臺回復:進度條,獲取整套源代碼?。?!
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/43389.html
摘要:時間永遠都過得那么快,一晃從年注冊,到現在已經過去了年那些被我藏在收藏夾吃灰的文章,已經太多了,是時候把他們整理一下了。那是因為收藏夾太亂,橡皮擦給設置私密了,不收拾不好看呀。 ...
摘要:網易云音樂上有很多適合程序猿的歌單,但是今天文章介紹的不是這些適合程序員工作時聽的歌,而是一個用開發的開源播放器,專門適用于網易云音樂的播放。 網易云音樂上有很多適合程序猿的歌單,但是今天文章介紹的不是這些適合程序員工作時聽的歌,而是一個用Python開發的開源播放器,專門適用于網易云音樂的播放。這個播放器的名稱為MusicBox, 特色是用命令行版本執行音樂的播放。 github地址...
摘要:從到打造一款產品是一種什么樣的體驗為了回答這種知乎范的問題,讓我來介紹下我是如何打造交易日記這款的過程。社會對群體聚集進行生產產品的模式需求在降低。這在接下來的部分我會介紹我如何在三個月內完成一款產品從到的過程。 從0到1打造一款產品是一種什么樣的體驗?為了回答這種知乎范的問題,讓我來介紹下我是如何打造交易日記這款App的過程。需要提前說明的是整款iOS APP的全部工作都是我一個人完...
摘要:從到打造一款產品是一種什么樣的體驗為了回答這種知乎范的問題,讓我來介紹下我是如何打造交易日記這款的過程。社會對群體聚集進行生產產品的模式需求在降低。這在接下來的部分我會介紹我如何在三個月內完成一款產品從到的過程。 從0到1打造一款產品是一種什么樣的體驗?為了回答這種知乎范的問題,讓我來介紹下我是如何打造交易日記這款App的過程。需要提前說明的是整款iOS APP的全部工作都是我一個人完...
閱讀 1542·2021-11-24 10:17
閱讀 1036·2021-09-29 09:43
閱讀 2167·2021-09-23 11:21
閱讀 2174·2019-08-30 14:13
閱讀 1300·2019-08-29 13:58
閱讀 3165·2019-08-28 17:51
閱讀 1815·2019-08-26 13:29
閱讀 2980·2019-08-26 10:13