Python脚本中的进度条

2024-03-29 01:35:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我不得不问一些其他人做过的事情,但我没有找到答案(可能是愚蠢的)

我需要在我的脚本python中实现一个进度条,关于TQM的ia red,我非常喜欢这个库,因为它有漂亮的颜色,并且这个进度条结构良好,而不是简单的[-----------]

我看到的一个简单脚本是:

from tqdm import tqdm
for i in tqdm(range(10000)):
    pass

但是我的问题是:我应该在哪里插入我的代码???看起来很愚蠢,但我试了好几次,但都没法打开。只需保持在0%,直到我的脚本结束

另一点是,如果我也尝试那个简单的代码,每次更新条本身时,它都会用一个新条创建一个新行。那么,当时间流逝时,我怎么能拥有一个填满的单条呢

非常感谢,当然,我们将非常感谢您的支持和建议

编辑---- 如果我的代码是:

alphabetic = ['a','b','c','d','e','f','g','h','i','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','0-9']

for lett in alphabetic: lista_pag_success = pr.find_following_page('/artisti/lettera/'+lett) 

artisti=[] 
linksss=[] 

for i in lista_pag_success: 
       artisti, linksss = pr.crawl_canzoni_it(i) 

我必须把所有这些代码放在tqdm()函数中?我必须通过一个考试吗?但如果我有这样的案子呢?lista_pag_success和artisti,linksss是三个列表-这是一个简单爬虫程序的代码-


Tags: 代码进度条in脚本forpr事情success
1条回答
网友
1楼 · 发布于 2024-03-29 01:35:41

您希望监视进度的iterable应该替换您发布的示例代码中的range(10000)

例如,如果您有一个数字列表[1, 4, 9, 10],并且您希望找到每个数字的平方,那么您将迭代tqdm([1, 4, 9, 10]),并在for循环内执行计算,即:

squared_nums = []
for num in tqdm([1, 4, 9, 10]):
    squared_nums.append(num * num)
print(squared_nums)

这将产生如下输出:

100%|████████████████████████████████████████████████████| 4/4 [00:00<00:00, 14820.86it/s]
[1, 16, 81, 100]

当然,在这种简单的情况下,也可以使用列表理解来编写:

squared_nums = [num * num for num in tqdm([1, 4, 9, 10])]

相关问题 更多 >