Skip to main content
 首页 » 编程设计

Python Progressbar (PyPi)之显示随 update() 变化的自定义文本

2025年05月04日12powertoolsteam

嘿,我正在使用 pypi 的进度条包,我真的很喜欢它。我的问题是到目前为止我还没有找到显示自定义文本的方法。我的意思是显示在我调用 pbar.update()

时更改的文本

例如,如果我递归地扫描我的计算机以查找文件,我希望进度条更改为当前文件。

widgets = [CustomText(), ' ', Percentage(), ' ', Bar('/'), ' ', RotatingMarker()] 
pbar = ProgressBar(widgets=widgets, maxval=1000) 
pbar.start() 
 
pbar.update(0, "custom_string") 

这样的事情最适合我。但是由于更新功能只需要一个数字,我不确定如何在不更改进度条库本身的情况下实现这样的功能。

提前致谢

请您参考如下方法:

我尝试使用 FormatLabel 小部件中的 update 方法来更改标签的内容,但它对我不起作用。但是,用一个全新的对象替换 FormatLabel 对我有用:

from progressbar import * 
import time 
 
widgets = [FormatLabel(''), ' ', Percentage(), ' ', Bar('/'), ' ', RotatingMarker()] 
progressbar = ProgressBar(widgets=widgets, maxval=10) 
progressbar.start() 
for i in range(0, 11): 
    widgets[0] = FormatLabel('<filename-{0}>'.format(i)) 
    progressbar.update(i) 
    time.sleep(.5) 
progressbar.finish()