tqdm 简介及正确的打开方式

article/2025/9/20 14:48:34

tqdm 简介及正确的打开方式

查遍了网上资料,发现绝大中文的讲解全都是一手带过,还称详细,真是醉了,于是有该文,也算给自己做个笔记

1. 什么是tqdm?

tqdm是一个快速的,易扩展的进度条提示模块,官方网站点击这里

但是为什么要取名为这样呢,官方上说:

tqdm derives from the Arabic word taqaddum (تقدّم) which can mean “progress,” and is an abbreviation for “I love you so much” in Spanish (te quiero demasiado).

所以呢,tqdm其实本身就有进度的意思,另外在西班牙语中还有I love you so much的意思,由此看来,作者应该是个语言大家呢

2. tqdm的安装

tqdm不是python的标准库,但安装很简单,直接使用pip即可,当然为了减少墙带来的麻烦,可以指定镜像源,关于pip镜像源的更换,可以查看这篇文章

pip install tqdm -i https://pypi.tuna.tsinghua.edu.cn/simple/

或者,如果你使用Anaconda:

conda install -c conda-forge tqdm

3. 三大使用方式

  • 基于迭代类型

    # 向tqdm中传入迭代类型即可
    from tqdm import tqdm
    import timetext = ""
    for char in tqdm(["a", "b", "c", "d"]):time.sleep(0.25)text = text + char
    

    效果如下:

  • 手动更新进度

    # 使用with语句来控制tqdm的更新
    with tqdm(total=100) as pbar:for i in range(10):time.sleep(0.01)pbar.update(1)  # 每次更新的多少# 当然也可以不用with,将tqdm赋值给一个变量
    pbar = tqdm(total=100)
    for i in range(100):time.sleep(0.1)pbar.update(10)
    pbar.close()  # !! 注意这样使用之后必须调用del 或者close方法删除该变量
    

    效果如下:

  • 在命令行中使用

    # 将输出的结果内容通过管道传送给 tqdm
    time find . -name '*.py' -type f -exec cat \{} \; | tqdm | wc -l
    

    效果如下:

    命令行使用的更多参数可见官网

4. tqdm.tqdm 的使用方式

官方中对该模块的讲解甚多,这里也着重讲解

  • 参数

iterable=None

  • iterable
  • 可选
  • 装饰进度条,如果为空,需要手动进行更新

desc=None

  • str
  • 可选
  • 进度条的前面的提示

total=None

  • int 或者 float

  • 可选

  • 迭代元素的多少

    • 如果没有指定,如果可以,使用len(iterable)代替
    • 如果是float(“inf”),只显示统计的基本信息
    • 如果参数gui为True,并且该参数需要后续更新,则初始化为一个任意大的正数,如9e9

leave=True

  • bool
  • 可选
  • 如果True,显示所有的进度条,如果是None,只显示第一个进度条

file=None

  • io.TextIOWrapper 或者 io.StringIO
  • 可选
  • 指定输出的路径

ncols=None

  • int

  • 可选

  • 输出信息的宽度

    • 指定了,动态改变进度条的宽度
    • 未指定,使用环境的宽度

mininterval=0.1

  • float
  • 可选
  • 最小进度显示更新间隔

maxinterval=10.0

  • float
  • 可选
  • 最大进度显示更新间隔

miniters=None

  • int 或者 float

  • 可选

  • 在迭代中显示最小进度的间隔

    • 如果为0,并且指定dynamic_miniters,会自动的调整到mininterval
    • 如果>0,跳过指定数目的迭代

ascii=None

  • bool 或者 str
  • 可选
  • 如果没有指定或者为False,使用平滑块(默认),否则使用ascii字符,指定字符的时候长度需大于2

disable=False

  • bool
  • 可选
  • 是否禁用整个进度条,如果是None,在non-tty上禁用

unit='it'

  • str
  • 可选
  • 将用于定义每个迭代的单元的字符串

unit_scale=False

  • bool 或 int 或 float
  • 可选
  • 如果为1或为真,则迭代次数将自动减少/缩放,并在国际单一性系统标准之后添加一个度量前缀(kilo、mega等)[默认值:False]。如果有任何其他非零数,将按比例总计和n。

dynamic_ncols=False

  • bool
  • 可选
  • 设置为True之后,ncols相当于无效

smoothing=0.3

  • float

  • 可选

  • 以指数型增长的速度进行增长

    • 0~1
    • gui模式下无效

bar_format=None

  • str

  • 可选

  • 自定义进度条字符格式,可能会影响性能

    • 具体见官网

initial=0

  • int 或 float
  • 可选
  • 初始计数值

position=None

  • int
  • 可选
  • 指定偏移量,从0开始

postfix=None

  • dic

  • 可选

  • 在进度条后指定额外的信息

    • 也可调用函数set_postfix实现

unit_divisor=1000

  • float
  • 可选
  • 除非unit_scale=True,否则忽略

write_bytes=None

  • bool
  • 可选
    • 如果None并且文件未指定,字节将用Python 2编写
    • 如果为真,也将写入字节
    • 其他情况下,将默认为unicode。

lock_args=None

  • tuple
  • 可选
  • 获取中间输出

gui=False

  • bool

  • 可选

  • 内部参数,使用tqdm.gui.tqdm替代

    • 设置True,会使用mtplotlib中的动画输出

**kwargs



  • 方法

update

  • 参数

    • int 或 float
    • 可选
  • 手动更新进度条信息

close

  • 清除并关闭进度条

clear

  • 清除当前显示的进度条

refresh

  • 强制刷新当前的进度条

  • 参数

    • nolock

      • bool

        • True

          • 不锁
        • False

          • 调用内部的函数acquire
      • 可选

    • lock_args

      • tuple

      • 可选

      • 传入到内部的函数acquire

        • 指定之后,只有acquire返回True才会显示进度条

unpause

  • 重新启动上一次打印时tqdm的计数器

reset

  • 参数

    • total

      • int or float
      • 可选
      • 新的进度条的total
  • 重新指定total为0以重复利用

set_description

  • 参数

    • desc

    • refresh

      • 强制刷新
  • 设置/修改进度条的提示,字符串后自动添加 “:”

set_description_str

  • desc
  • refresh
  • 设置/修改进度条的提示,字符串后不添加 “:”

set_postfix

  • 参数

    • ordered_dict
    • refresh
    • **kwargs
  • 设置/修改进度条后的提示信息

set_postfix_str

  • 参数

    • s
    • refresh
  • 以字符串的形式直接显示信息

即为下方图片


http://chatgpt.dhexx.cn/article/CVUiMtcE.shtml

相关文章

tqdm库

tqdm库 文章目录 tqdm库如何安装如何使用1.基于迭代的进度条2.手动设置进度条 如何在Pandas中使用进度条如何在keras中使用进度条如何使用Notebook优化的进度条和层级进度条如何为文件存储设置进度条 简要介绍: tqdm是一个进度条可视化库,可以帮助我们监…

tqdm的使用和例子

1. tqdm的介绍 有时候在使用Python处理比较耗时操作的时候,为了便于观察处理进度,这时候就需要通过进度条将处理情况进行可视化展示,以便我们能够及时了解情况。 tqdm就能非常完美的支持和解决这些问题,可以实时输出处理进度而且…

一个被忽视的Python神器 - Tqdm

1. 什么是Tqdm 在日常工作和学习中,经常需要观察当前任务的执行进度,尤其是一个执行时间很长的任务,如果能够有进度条实时的显示当前的任务进度,那么将非常方便。 Tqdm 是一个快速,可扩展的Python进度条,…

tqdm 详解

文章目录 1. 简介2. 使用方法3. 实例 - 手写数字识别 1. 简介 tqdm是 Python 进度条库,可以在 Python长循环中添加一个进度提示信息。用户只需要封装任意的迭代器,是一个快速、扩展性强的进度条工具库。 2. 使用方法 传入可迭代对象 import time from…

idea方法注释的快捷键设置idea自定义注释设置

作者: yibox_qcby目录 效果展示配置步骤第一步第二步第三步第四步第五步第六步 完成 效果展示 配置步骤 第一步 第二步 第三步 第四步 注意第一行不是/** *** ClassName $className$* Description : 功能说明* $params$* Return : $return$* Author : 作者* Date : $DATE$ $…

idea中使用注释快捷键的问题及解决办法

问题描述 在idea中,使用注释快捷键会产生在注释前面会有缩进,这种缩进对于有着强迫症的我简直受不了 在按照网上其他的教程进行相关设置之后还是出现这样的问题 解决方法 我在使用中偶然发现idea注释的快捷键除了行注释(Ctrl/&#xff…

idea文档注释的快捷键带参数

注意:为了大家能逐步了解 对这个小功能有个熟悉的过程 (其实是作者比较懒 不想从头到尾重新截图 ) 发现问题会在文章未陆续更新 建议把整篇文章都看完 如果懒得看过程 看完开头后 文章最后代码直接复制进去就好了 输入 /** 按回车,当然这肯定…

IDEA设置类和方法的注释快捷键

一、设置类的注释快捷键 1.打开file->setting->Editor->Filr and Code Templates->Includes->File Header,如下图所示: 2.注释模板参考: /**1. description: 2. author: ManolinCoder3. time: ${DATE} */ 3.创建类时候自动…

修改idea快捷键注释样式

打开设置 找到Editor -> Code Style -> Java 以修改xxx.java文件注释样式,点击其它位置,修改其它语言注释样式 找到Code Generation 取消Line comment at first column和Block comment at first column,勾上Add a space at line commen…

idea 方法注释的快捷键设置

1.打开设置setting->Editor->Live Templates 2.然后点击号,选择第二个,设置一个自定义的组,输入名字,这里我叫mytemp 3.选定刚才创建的组,再次点击号,创建一个模板,重点,写模板…

IDEA的三种注释快捷键

一.行注释 1.1快捷键:Ctrl/ 1.2效果演示: 二.块注释 2.1快捷键:CtrlShift/ 2.2效果演示: 三.方法说明注释 3.1快捷键:输入/** ,点击“Enter”,自动根据参数和返回值生成注释模板

【IDEA】idea注释快捷键不生效

文章目录 配置注释快捷键1. 新建 template Group,我这里创建了一个名为 user 的模板组2.创建这个模板组里的快捷键3. 验证4. 成功啦 配置注释快捷键 1. 新建 template Group,我这里创建了一个名为 user 的模板组 2.创建这个模板组里的快捷键 3. 验证 发…

mac下 idea 注释快捷键冲突

你好,我是悦创。 博客首发:https://bornforthis.cn/posts/28.html 打开偏好设置,将冲突的快捷键关掉,就可以解决 idea 使用注释快捷键,会打开 help 页面的问题: 欢迎关注我公众号:AI悦创,有…

idea注释快捷键(三种)

①单行注释 ctrl/ ②多行注释 ctrlshift/ ③文档注释,方法或者累说明注释 /** enter键 扩展:eclipse企业版xml文件注释:

IDEA注释快捷键

IDEA可以使用快捷键添加行注释Ctrl/、块注释CtrlShift/,还可以快速生成类注释、方法注释等,下面就介绍这几种快捷键的用法. 1、Ctrl/ 行注释 2、ctrl shift / 块注释 3、方法或类注释 在一个方法或类的开头,输入/**,然后按回车,自动根据…

idea注释的快捷键三种方式

1、第一种 单行注释(ctrl/ ) 光标处于当前需要写注释的这一行,在这行任何位置都可以,可以调整的,ctrl/ 即可实现单行注释,如图,当想取消时,也可以使用ctrl/取消行注释 2、第二种&a…

IntelliJ IDEA添加注释常用的快捷键

IDEA可以使用快捷键添加行注释Ctrl/、块注释CtrlShift/,还可以快速生成类注释、方法注释等,下面就介绍这几种快捷键的用法. [1]行注释Ctrl/ 首先你的光标要处于这一行,处于这行的哪个位置都可以,按Ctrl/,就可以往行首添加"//"&am…

IDEA中注解注释快捷键及模板

前些天发现了十分不错的人工智能学习网站,通俗易懂,风趣幽默,没有广告,分享给大家,大家可以自行看看。(点击跳转人工智能学习资料) 文章目录 单行注释多行注释文档注释(块注释)方法说明注解自动…

Kafka详解(包括kafka集群搭建)

目录 一、Kafka简介 Kafka是什么 消息系统简介 点对点消息传递模式 发布-订阅消息传递模式 kafka简单理解 Kafka的优点特点 学Kafka的意义何在 二、常用Message Queue对比 三、Kafka中的术语解释概述 broker Topic Partition Producer Consumer Consumer Group…

Linux - Kafka集群搭建

Linux - Kafka集群搭建 准备&安装配置基本命令 以下操作环境均在Centos7服务器上面,一共三台服务器,11、12、13 准备&安装 官网下载Zookeeper,看准自己需要的版本,我自己这里就下载一个旧的版本使用了(2.11-2…