python模块之——tqdm(进度条)

本文介绍了Python中tqdm模块的使用,展示了如何创建进度条,并解释了其参数设置,以实现动态显示任务进度,提高用户界面体验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 from tqdm import tqdm
2 
3 for i in tqdm(range(10000)):
4     """一些操作"""
5     pass

效果:

下面说一下tqdm中的参数:

iterable=None,            
desc=None,      传入str类型,作为进度条标题(类似于说明)
total=None,     预期的迭代次数
leave=True,             
file=None, 
ncols=None,         可以自定义进度条的总长度
mininterval=0.1,    最小的更新间隔
maxinterval=10.0,   最大更新间隔
miniters=None,
ascii=None,
unit='it',
unit_scale=False,
dynamic_ncols=False,
smoothing=0.3,
bar_format=None,
initial=0,
position=None,
postfix 以字典形式传入 详细信息 例如 速度= 10,
1 dict = {"a":123,"b":456}
2 for i in tqdm(range(10),total=10,desc = "WSX",ncols = 100,postfix = dict,mininterval = 0.3):
3     pass

结果:

 1 from tqdm import trange
 2 from random import random, randint
 3 from time import sleep
 4 with trange(100) as t:
 5     for i in t:
 6         # Description will be displayed on the left
 7         t.set_description('下载速度 %i' % i)
 8         # Postfix will be displayed on the right,
 9         # formatted automatically based on argument's datatype
10         t.set_postfix(loss=random(), gen=randint(1,999), str='详细信息',
11                      lst=[1, 2])
12         sleep(0.1)

类似显示一个标题和详细信息。

效果:

。。。。

转载于:https://www.cnblogs.com/WSX1994/p/10101570.html

### 使用 `tqdm` 库实现控制台进度条 为了在Python中创建一个直观且功能强大的控制台进度条,推荐使用`tqdm`库。该库简单易用并能自动处理大部分细节。 安装此库可以通过pip命令完成: ```bash pip install tqdm ``` 下面是利用`tqdm`库构建的一个基本示例程序[^2]: ```python from time import sleep from tqdm import tqdm for i in tqdm(range(100)): sleep(0.01) # 模拟耗时操作 ``` 这段代码会显示一个动态更新的进度条,在循环执行期间不断前进直到结束。它非常适合用于长时间运行的任务监控其进展状况。 ### 使用纯 Python 实现简易版进度条 如果不希望通过第三方依赖来解决问题,则可以考虑采用更基础的方式——仅依靠标准库中的模块如`sys.stdout.write()`配合字符串格式化达到相同效果[^3]。 以下是不借助任何额外包的情况下制作静态刷新型进度指示器的例子: ```python import sys import time total = 100 progress = 0 bar_length = 50 while progress <= total: percent = float(progress) / total hashes = '#' * int(round(percent * bar_length)) spaces = ' ' * (bar_length - len(hashes)) sys.stdout.write("\rProgress: [{0}] {1}%".format(hashes + spaces, round(percent*100))) sys.stdout.flush() time.sleep(0.1) # Simulate work being done. progress += 1 print() # Move to next line after completion. ``` 上述脚本通过覆盖同一行输出实现了视觉上的连续变化,从而形成了一种简单的进度条效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值