码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • tqdm python使用总结


    tqdm python使用总结

    • 一 概述
    • 二 使用示例

    一 概述

    参考:https://blog.csdn.net/winter2121/article/details/111356587

    总结:tqdm()只是给遍历过程添加了进度条,传入的可以是可迭代对象,也可以是不可迭代对象(需要额外设置,成为手动更新)。这两种运行模式具体见下面链接:
    https://zhuanlan.zhihu.com/p/163613814

    二 使用示例

    # 可迭代对象,自动更新
    dic = ['a', 'b', 'c', 'd', 'e']
    pbar = tqdm(dic)
    for i in pbar:
        pbar.set_description('Processing '+i)
        time.sleep(0.2)  
     
     Processing e: 100%|██████████| 5/5 [00:01<00:00,  4.69it/s]
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    # 不可迭代对象,手动更新
    from tqdm import tqdm
    import time
    
    with tqdm(range(100), desc='Test') as tbar:
        for i in tbar:
            tbar.set_postfix(loss=i/100, x=i)
            tbar.update()  # 手动更新,默认参数n=1,每update一次,进度+n
            time.sleep(0.2)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    在这里插入图片描述

    # 不可迭代对象,手动更新
    from tqdm import tqdm
    import time
    
    with tqdm(range(100), desc='Test') as tbar:
        for i in tbar:
            tbar.set_postfix({'loss': '{0:1.5f}'.format(i/100), "x": '{0:1.5f}'.format(i)})
            tbar.update()  # 手动更新,默认参数n=1,每update一次,进度+n
            time.sleep(0.2)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    在这里插入图片描述

    # 不可迭代对象,手动更新
    from tqdm import tqdm
    import time
    
    total = 200 #总迭代次数
    loss = total
    
    with tqdm(total=200, desc='Test') as pbar:
        pbar.set_description('Processing:') #  tqdm()中的desc参数和pbar.set_description()是一回事,后者优先。
        for i in range(20):
            loss -= 1
            pbar.set_postfix({'loss': '{0:1.5f}'.format(i/100), "x": '{0:1.5f}'.format(i)})  # 输入一个字典,显示实验指标
            # pbar.set_postfix(loss=i/100, x=i)
            pbar.update(10)  # 手动更新,默认参数n=1,每update一次,进度+n
            time.sleep(0.2)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    在这里插入图片描述
    总结:tqdm.set_postfix()传入参数的两种方式:

    # 1 传入元组
    tbar.set_postfix(loss=i/100, x=i)
    
    # 2 传入字典
    tbar.set_postfix({'loss': '{0:1.5f}'.format(i/100), "x": '{0:1.5f}'.format(i)})
    
    # 两种方法的结果一样
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
  • 相关阅读:
    Spring(AOP)
    【玩物立志-scratch少儿编程】骑上小摩托(动态背景+摄像头控制操作)
    Python网页应用开发神器fac 0.2.6版本重要新功能一览
    浅谈 React 与 Vue 更新机制的差异
    vscode 实用插件
    Ubuntu 20.04.3 LTS 安装打印服务器 局域网发现系统服务 共享给 windows 10/11 使用
    java毕业设计网上花店系统源码+lw文档+mybatis+系统+mysql数据库+调试
    Linux下Apache与Nginx服务器配置与优化
    Win7开机进入修复界面处理方法
    阐述以下方法 @classmethod, @staticmethod, @property?
  • 原文地址:https://blog.csdn.net/LIWEI940638093/article/details/126694282
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号