Python關(guān)于print的操作(倒計(jì)時、轉(zhuǎn)圈顯示、進(jìn)度條)_第1頁
Python關(guān)于print的操作(倒計(jì)時、轉(zhuǎn)圈顯示、進(jìn)度條)_第2頁
Python關(guān)于print的操作(倒計(jì)時、轉(zhuǎn)圈顯示、進(jìn)度條)_第3頁
Python關(guān)于print的操作(倒計(jì)時、轉(zhuǎn)圈顯示、進(jìn)度條)_第4頁
Python關(guān)于print的操作(倒計(jì)時、轉(zhuǎn)圈顯示、進(jìn)度條)_第5頁
已閱讀5頁,還剩1頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第Python關(guān)于print的操作(倒計(jì)時、轉(zhuǎn)圈顯示、進(jìn)度條)目錄前言步入正題1、橫條加載2、倒計(jì)時顯示3、轉(zhuǎn)圈等待顯示4、進(jìn)度條顯示進(jìn)度條改進(jìn)版進(jìn)度條升級版tqdm模塊progressbar模塊總結(jié)

前言

在python中,print是重要的輸出語句,讓我們更方便的知道程序的運(yùn)行狀況,但是這樣還不夠,我們也可以用print來給周圍的小伙伴秀一下

步入正題

\r表示將光標(biāo)的位置回退到本行的開頭位置\b表示將光標(biāo)的位置回退一位

1、橫條加載

num=20

foriinrange(num):

print("#")

打印結(jié)果:

。。。。(此處省略剩下16個#)

結(jié)果發(fā)現(xiàn)這樣很丑,達(dá)不到我們的預(yù)期,所以,在print里面,我們有一個flush,是及時刷新的意思,默認(rèn)為False,只有所有內(nèi)容都有來然后一次性打印出來,為True時是及時更新print的信息

importtime

num=20

foriinrange(num):

print("#",end="",flush=True)

time.sleep(0.1)

這次我們加上time中延遲的sleep來綜合試一下

打印結(jié)果:

2、倒計(jì)時顯示

importtime

foriinrange(5,0,-1):

print("\r","倒計(jì)時{}秒!".format(i),end="",flush=True)

time.sleep(1)

打印結(jié)果:

在print中,\r就可以讓打印之后有重新回到本行開頭的位置繼續(xù)打印,相當(dāng)于重新刷了一遍,但是我們不難發(fā)現(xiàn),倒計(jì)時前面有個小空缺,那是因?yàn)閈r占了一個小位置,所以我們把代碼重新改造一下。

importtime

foriinrange(5,0,-1):

print("\r倒計(jì)時{}秒!".format(i),end="",flush=True)

time.sleep(1)

print("\r倒計(jì)時結(jié)束!")

打印結(jié)果:

3、轉(zhuǎn)圈等待顯示

話不多說直接上代碼

importtime

sum=10#設(shè)置倒計(jì)時時間

timeflush=0.25#設(shè)置屏幕刷新的間隔時間

foriinrange(0,int(sum/timeflush)):

list=["\\","|","/","—"]

index=i%4

print("\r程序正在運(yùn)行{}".format(list[index]),end="")

time.sleep(timeflush)

運(yùn)行結(jié)果:

4、進(jìn)度條顯示

importtime

days=365

foriinrange(days):

print("\r進(jìn)度條百分比:{}%".format(round((i+1)*100/days)),end="",flush=True)

time.sleep(0.02)

打印結(jié)果:

進(jìn)度條改進(jìn)版

importtime

num=50#設(shè)置倒計(jì)時時間

timeflush=0.5#設(shè)置屏幕刷新的間隔時間

foriinrange(0,int(num/timeflush)+1):

print("\r正在加載:"+"|"+"*"*i+""*(int(num/timeflush)+1-i)+"|"+str(i)+"%",end="")

time.sleep(timeflush)

print("\r加載完成!")

打印結(jié)果:

進(jìn)度條升級版

我們通過加入一些進(jìn)度條模塊,可以實(shí)現(xiàn)進(jìn)度條炫酷的效果

tqdm模塊

我們在cmd中下載tqdm模塊

pipinstalltqdm

我們在pycharm中加入tqdm模塊

勾選Installtouserssitepackagesdirectory

點(diǎn)擊InstallPackage

然后代碼如下:

fromtqdmimporttqdm

foriintqdm(range(10000)):

pass

運(yùn)行結(jié)果:

這里根據(jù)每個電腦的不同而范圍不同,電腦性能好的同學(xué)可以適當(dāng)?shù)闹嫡{(diào)大,這樣會顯示最佳的體驗(yàn)效果

progressbar模塊

現(xiàn)在cmd中下載progressbar模塊,命令是

pipinstallprogressbar

即可安裝成功

然后在pycharm中安裝progressbar模塊

勾選Installtouserssitepackagesdirectory

點(diǎn)擊InstallPackage

代碼如下:

fromprogressbarimport*

importtime

pro=ProgressBar()#將progressbar中的ProgressBar實(shí)例化

foriinpro(range(1000)):

time.sleep(0.01)

運(yùn)行結(jié)果:

我的電腦不知道怎么回事,正常的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論