【Python】tqdm 模块

news/2024/11/8 0:39:43/
import mathfrom tqdm import tqdm, trange# 计算阶乘
results_1 = []for i in range(6666):results_1.append(math.factorial(i))

这是一个循环计算阶乘的程序,我们不知道程序运行的具体情况,如果能加上一个程序运行过程的进度条,那可就太有趣了。

results_2 = []for i in tqdm(range(6666)):results_2.append(math.factorial(i))

直接加上 tqdm() 就好啦,下面是在 jupyter lab 上运行的结果。

results_3 = []for i in trange(6666):results_2.append(math.factorial(i))

我们也可以直接在 range(6666) 前加上一个 t,使用 trange() 也有同样的效果。

trangetqdm 的主要区别是 trange 只接受范围参数,而 tqdm 可以接受任何可迭代对象。此外,trange 相对于 tqdm 来说更加轻量级,只提供了一些基本的进度条功能。如果您只需要简单的进度条并且您的循环是迭代范围,则使用 trange 可能更加合适。

import mathfrom tqdm.notebook import tqdm, trange# 计算阶乘
results_1 = []for i in trange(6666):results_1.append(math.factorial(i))

使用 tqdm.notebook 可以使在 jupyter lab 上运行的进度条变的好看一些,效果如下。

import math
from tqdm import tqdm, trangeresults_1 = [math.factorial(i) for i in tqdm(range(6666))]
results_2 = [math.factorial(i) for i in (trange(6666))]

这是在 PyCharm 中运行的进度条。

import mathfrom tqdm import tqdm, trange# 计算阶乘
results_1 = []for i in tqdm(range(6666), ncols=100):results_1.append(math.factorial(i))

参数 ncols:整个输出信息的宽度。最上面运行的那个都换行了,太丑了哈。

import mathfrom tqdm import tqdm, trange# 计算阶乘
results_1 = []for i in tqdm(range(6666), ncols=100, desc='newjeans', colour='green'):results_1.append(math.factorial(i))

desc: 进度条的前缀信息。colour:进度条的颜色。下面是效果。

# 自定义进度条,前导信息
proc_bar = tqdm(range(6666), ncols=100)
for i in proc_bar:proc_bar.set_description(f"正在计算{i}")math.factorial(i)

进度条的前导信息设置,初始化一个 tqdm 对象,使用 set_description() 方法。

proc_bar = tqdm(range(6666), ncols=100)
for i in proc_bar:proc_bar.set_postfix({"正在计算" : i})math.factorial(i)

进度条后缀信息设置,初始化一个 tqdm 对象,使用 set_postfix() 方法。


http://www.ppmy.cn/news/31208.html

相关文章

Excel绘制数据对比表格-表格可视化

Word中生成的表格一般比较单调,若一组数据存在对比的情况时,读者/审稿人难以直接通过详细对比数据来分析,此时若可以将该组数据可视化来对比则为好,Excel则可实现该功能。 关于有些期刊需要提供表格中的数据便于复制等情况时&…

TiDB Server

文章目录TiDB Server架构TiDB Server作用TiDB Server的进程SQL语句的解析和编译SQL读写相关模块在线DDL相关模块GC机制与相关模块TiDB Server的缓存热点小表缓存TiDB Server架构 Protocol Layer、Parse、Compile负责sql语句的解析编译和优化,然后生成sql语句执行计划…

MySQL 中的 distinct 和 group by 哪个效率更高?

先说大致的结论 : 在语义相同,有索引的情况下:group by和 distinct 都能使用索引,效率相同。在语义相同,无索引的情况下:distinct 效率高于group by。原因是 distinct 和 group by都会进行分组操作&#x…

hive 分桶文件的大小多大最合适

hive 分桶文件的大小多大最合适 Hive 分桶文件大小的最佳选择取决于多个因素,例如数据的大小、查询模式、硬件配置和网络带宽等。一般来说,建议将每个桶的大小控制在128 MB到1 GB之间。 以下是一些关于选择分桶大小的建议: 根据数据大小选…

MySQL数据库基础

目录 数据库介绍 什么是数据库 数据库的分类 1. 数据库的操作 创建数据库 显示数据库 使用数据库 删除数据库 2. 表的操作 创建表 删除表 3. 常用数据类型 插入数据 查询数据 从本篇起就又要开始新的篇章了,数据结构初级阶段的就告一段落了&#xff0…

14个Python处理Excel的常用操作分享

自从学了Python后就逼迫用Python来处理Excel,所有操作用Python实现。目的是巩固Python,与增强数据处理能力。本文为大家整理了14个Python处理Excel的常用操作,非常好用,希望对大家有所帮助目录自从学了Python后就逼迫用Python来处…

Jetpack太香了,让开发效率提升了不少

作者:Jingle_zhang 第三方App使用Jetpack等开源框架非常流行,在Gradle文件简单指定即可。然而ROM内置的系统App在源码环境下进行开发,与第三方App脱节严重,采用开源框架的情况并不常见。但如果系统App也集成了Jetpack或第三方框架…

【教程】你现在还不知道微软的New Bing?你out了,快点进来看

哈喽啊,大家好,好久不见,我是木易巷! 不禁感叹,AI人工智能时代真的已经来临! 目前,谷歌和微软就各自面向大众的产品发布了重大公告。谷歌推出了一款名为Bard实验性对话式 AI 服务,而…