当前位置:   article > 正文

使用Python制作进度条有多少种方法?看这一篇文章就够了!_python 进度条

python 进度条

前言

偶然间刷到一个视频,说到:当程序正在运算时,会有一个较长时间的空白期,谁也不知道程序运行的进度如何,不如给他加个进度条

于是我今个就搜寻一下,Python版的进度条都可以怎么写!

送书活动:【码银送书啦】多本机械工业出版社好书

正文

1、数字进度条

进度条的格式是"{当前循环次数} / {总循环次数}"。其中,循环次数从1开始,到500,000结束。

通过使用end='\r'参数,print语句的输出不会换行,而是每次循环都会覆盖上一次的输出。这样就实现了实时更新进度条的效果。

  1. for i in range(500000):
  2. print(f'{i+1} / {500000}',end='\r')

2、使用百分号表示进度

  1. for i in range(500):
  2. for j in range(5000):
  3. print(f'{((i+1)*100 // 500)}%',end='\r')

3、 使用字符完成简易进度条

该代码将打印出一行字符,并且字符的总长度为50个字符。 其中,字符的内容为"@"的重复,重复的次数为50次。 外面的"| |"是用来给字符串添加边框的,以增加可读性。

  1. for i in range(500):
  2. for j in range(500):
  3. print("进度条:"f'|{"@"*((i+1)*50 // 500):50}|',end='\r')
  4. print("\n程序完成")

3和4是可以结合起来的 :

  1. for i in range(500):
  2. for j in range(500):
  3. print("进度条:"f'|{"@"*((i+1)*50 // 500):50}|',f'{((i+1)*100 // 500)}%',end='\r')
  4. print("\n程序完成")

输出结果:

进度条:|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@| 100%

 4、使用tqdm库完成进度条

官网:tqdm · PyPI

 安装这个库:pip install tqdm。

示例代码:

  1. from tqdm import tqdm
  2. import time
  3. for i in tqdm(range(500)):
  4. time.sleep(0.1)

 5、使用alive-progress库完成进度条

官网链接:alive-progress · PyPI

安装库:pip install alive-progress 

示例代码:

  1. from alive_progress import alive_bar
  2. import time
  3. with alive_bar(100, force_tty=True) as bar:
  4. for i in range(100):
  5. time.sleep(0.1)
  6. bar()

效果视频: 

进度条1

6、使用rich库完成进度条

安装库: pip install rich

  1. import time
  2. from rich.progress import track
  3. for i in track(range(100),description="进度:"):
  4. time.sleep(0.1)

这个截图没有在Pycharm编辑器里截图的原因是:

显示不全哈哈。

7、让文心一言给我画一个
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/243146?site

推荐阅读
相关标签