文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

你还在使用打桩来记录 for 循环吗?

2024-11-29 19:52

关注

在这里我最推荐的进度条库就是tqdm。这个库使用简单,可以在循环、函数等多种场景快速添加进度条。而且设计优雅,提供了丰富的定制化选项。

用法

(1) 下载tqdm库

pip install tqdm

然后使用import tqdm导入就可以使用了

(2) 传入可迭代对象

这里我们使用for循环来举例说明

from tqdm import tqdm
import time

for item in tqdm(range(100)):
    time.sleep(0.2)

正常我们在使用for循环的时候是后面直接跟range循环数的,在这里我们在range外面加了一个tqdm(),这样在运行for循环后就会显示当前程序运行的进度,并且以进度条展示出来。

这样我们就可以根据进度条很清晰的看到当前for循环的执行进度了,比我们直接用print打桩简直好的不是太多。

当前,这里有很多种写法的,比如这里也可以使用tqdm.trange()

import tqdm
import time

for item in tqdm.trange(100):
    time.sleep(0.2)

上面的实现效果和tqdm()效果是差不多的,我们也可以在后面加上参数为进度条进行命名,

import tqdm
import time

for i in tqdm.tqdm(range(100),desc="这是进度条的名称"):
    time.sleep(0.2)

命名后在下方的进度就会显示我们的指定名称

3.循环嵌套进度

tqdm支持在循环中嵌套循环,每个循环都可以显示独立的进度条。实现嵌套进度条只需要传入参数positinotallow=0即可:

import tqdm
import time

for i in tqdm(range(5), position=0):
    for j in tqdm(range(100), position=1):
       time.sleep(0.2)

手动调整

可以使用with语法手动调整for循环的循环数量

import tqdm
import time

with tqdm(total=50) as number:   #总进度50
    for item in range(10):
         time.sleep(0.2)
         number.update(10)

上面代码的意表示程序的总进度是50,然后循环10次运行,每一次循环执行10/50=20%的进度,这个20%是由update()中传入的值10来除以总进度total=50计算出来的百分比。

值得注意的是,例如上面的代码中,我们循环了10次,但是每一次都运行20%的进度,那么我们运行五次就100%了,剩下的五次循环就不会记录在执行的进度条中了

同理可得:

import tqdm
import time

with tqdm(total=50) as number:   #总进度50
    for item in range(2):
         time.sleep(0.2)
         number.update(10)

如果我们只循环两次的话,则总共就只会记录40%的进度

手动调整这个功能一般常用于邮件、消息、数据传输等场景的使用,我们可以根据自己调整的进度条实时查看传输的进度。

来源:Python技术内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯