文字進度條

2021-10-18 11:32:20 字數 1530 閱讀 6015

----採用字串方式列印可以動態變化的文字進度條

——進度條需要能在一行中逐漸變化

如何獲得文字進度條的變化時間

——採用sleep()模擬乙個持續的進度

#textprobarv1.py

import time

scale=

10print

("-----執行開始-----"

)for i in

range

(scale+1)

a='*'

*ib=

'.'*

(scale-i)

c=(i/scale)

*100

print

("%[{}->{}]"

.format

(c,a,b)

)time.sleep(

0.1)

print

("-----執行結束------"

)

解釋:

他能夠在每一行中根據程式的進度,不斷的顯示文字進度條的資訊,但是不換行

重新整理的本質

就是用後列印的字元資訊覆蓋之前資訊

例如:之前出現的是10,然後第二次出現的是20,那麼重新整理後就是20,20會替代10出現在原來的位置上

單行重新整理要求i我們不能換行,因為換行後之前的資訊不能被修改。

所以要求我們 print()需要被控制,

要能退回,列印後游標退回到之前的位置\r

重新整理的關鍵是\r

百分數的輸入:

#text.py

import time

for i in

range

(101):

print(""

)

完整效果的文字進度條

#textprobar.py

import time

scale=

50print

("執行開始"

.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%[{}->{}]s"

.format

(c,a,b,dur)

,end="")

time.sleep(

0.1)

print

("\n"

+"執行結束"

.center(scale//2,

'-')

)

之前一直沒有成功,原因竟然是執行地方不對,之前一直是在文字中進行的,這個是在命令提示符中進行的,大家一定要謹記,加油

文字進度條

文字進度條 import time scale 50 print 執行開始 center scale 2,t time.clock for i in range scale 1 a i b scale i c i scale 100 t time.clock print r s format c,a...

python 文字進度條

textprobarv.py import time scale 50 print 執行開始 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...

python 文字進度條

需求分析 1 採用字串方式列印可以動態變化的文字進度條 2 進度條需要能在一行中逐漸變化 問題分析 如何獲得文字進度條的變化時間?採用sleep 模擬乙個持續的進度!簡單的開始 import time scale 10 print 執行開始 for i in range scale 1 a i b ...