赞
踩
偶然间刷到一个视频,说到:当程序正在运算时,会有一个较长时间的空白期,谁也不知道程序运行的进度如何,不如给他加个进度条。
于是我今个就搜寻一下,Python版的进度条都可以怎么写!
送书活动:【码银送书啦】多本机械工业出版社好书
进度条的格式是"{当前循环次数} / {总循环次数}"。其中,循环次数从1开始,到500,000结束。
通过使用end='\r'参数,print语句的输出不会换行,而是每次循环都会覆盖上一次的输出。这样就实现了实时更新进度条的效果。
- for i in range(500000):
-
- print(f'{i+1} / {500000}',end='\r')
- for i in range(500):
- for j in range(5000):
- print(f'{((i+1)*100 // 500)}%',end='\r')
该代码将打印出一行字符,并且字符的总长度为50个字符。 其中,字符的内容为"@"的重复,重复的次数为50次。 外面的"| |"是用来给字符串添加边框的,以增加可读性。
-
- for i in range(500):
- for j in range(500):
- print("进度条:"f'|{"@"*((i+1)*50 // 500):50}|',end='\r')
-
- print("\n程序完成")
3和4是可以结合起来的 :
- for i in range(500):
- for j in range(500):
- print("进度条:"f'|{"@"*((i+1)*50 // 500):50}|',f'{((i+1)*100 // 500)}%',end='\r')
-
- print("\n程序完成")
输出结果:
进度条:|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@| 100%
官网:tqdm · PyPI
安装这个库:pip install tqdm。
示例代码:
- from tqdm import tqdm
- import time
-
- for i in tqdm(range(500)):
- time.sleep(0.1)
安装库:pip install alive-progress
示例代码:
- from alive_progress import alive_bar
- import time
-
- with alive_bar(100, force_tty=True) as bar:
- for i in range(100):
- time.sleep(0.1)
- bar()
效果视频:
进度条1
安装库: pip install rich
- import time
- from rich.progress import track
-
- for i in track(range(100),description="进度:"):
- time.sleep(0.1)
这个截图没有在Pycharm编辑器里截图的原因是:
显示不全哈哈。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。