1. 程序代碼
import datetime
import time
# 總步長數
steps = 50
# 打印進度條長度
length = 30
for step in range(1, steps + 1):
start_time = time.time()
# 模擬程序運行
time.sleep(0.3)
end_time = time.time()
# 程序執行剩餘時間
residue_time = str(datetime.timedelta(seconds=(steps - step) * (end_time - start_time))).split('.')[0]
# \r用来在每次输出完成后,将光标移至行首,这样保证进度条始终在同一行输出,即在一行不断刷新的效果; end='',用来保证不换行,不加这句默认换行。
print("\r%d/%d [%s>%s] - ETA: %s" % (step, steps, '=' * int(length * (step / steps)), '.' * (length - int(length * (step / steps))), residue_time), end='', flush=True)
print('\nPerform the end!')
a. 在print()函數中加入 end='' 效果圖
![](https://img-blog.csdnimg.cn/20210106191941311.PNG?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDczMDAwMA==,size_16,color_FFFFFF,t_70)
b. 不在print()函數中加 end='' 效果圖
![](https://img-blog.csdnimg.cn/20210106192152247.PNG?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDczMDAwMA==,size_16,color_FFFFFF,t_70)