Python循环进度可视化

文章介绍了在Python编程中进行循环处理时如何实现进度可视化,包括两种方法。一种是利用print函数覆盖终端输出显示进度,另一种是使用tqdm库的trange函数,它能提供更友好的进度条和额外信息,如耗时和处理速度。
摘要由CSDN通过智能技术生成

2.2 循环进度可视化

在Python程序开发时,经常会遇到循环处理的情况,如果循环次数比较多,耗时又比较长的话,通常就没办法得知循环到哪里了,在大循环中等待我想不是一件很好的事情,有时候等不急只能强制停止程序。
如果在循环时可以显示循环的进度,会让人比较安心,至少心里有数。下面介绍两种方法,可以在循环时,在终端显示循环的进度。
覆盖终端中的输出以显示循环进度

import time
counts = 200
for i in range(counts):
    percent = (i + 1) * 100 // counts
    print('\r', end='')
    print(f'进度:{percent}%', end='')
    # 下面是循环处理代码
    time.sleep(0.05)

进度:100%

通过上面的方法,可以设定每次循环后将输出起点调整到行首,由于后续的进度显示会覆盖掉前面的,所以从视觉效果上看就是看到进度一直在变动,从1%一直到100%。
优点:不需要导入其它模块,并且for语句很灵活。
缺点:循环中不能输出其它内容,并且需要新建percent变量用来显示进度。
使用tqdm库中的trange

from tqdm import trange
from time import sleep
for i in trange(100):
    sleep(0.1)

100%|██████████| 100/100 [00:10<00:00, 9.97it/s]

由于是使用了第三方库,这种方法显示效果特别友好,可以显示以下信息:

  • 显示进度百分比
  • 显示进度条
  • 显示总耗时以及倒计时
  • 显示每秒处理的循环次数
    该方法优点是简单易用,不过缺点就是for语句不灵活,只能从trange中获取循环变量。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

0思必得0

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值