Python Progressbar (PyPi) - отображать пользовательский текст, который изменяется с помощью update () - PullRequest
1 голос
/ 10 декабря 2011

Привет, я использую пакет ProgressBar от Pypi, и он мне очень нравится.Моя проблема в том, что я до сих пор не нашел способ отобразить пользовательский текст.Под этим я подразумеваю отображение текста, который изменяется при вызове pbar.update()

Например, если я рекурсивно сканирую свой компьютер на наличие файлов, я хочу, чтобы индикатор выполнения переключился на текущий файл.

Нечто подобное сработало бы лучше для меня.Но поскольку функция обновления занимает только число, я не уверен, как реализовать что-то подобное без изменения самой библиотеки индикатора выполнения.

Заранее спасибо

1 Ответ

8 голосов
/ 11 декабря 2011

Я пытался использовать метод update в виджете FormatLabel, чтобы изменить содержимое метки, но у меня это не сработало. Однако замена 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()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...