/
clewexx
/
hh
ОбзорДокументацияВойти
/
clewexx
/
hh
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
ДокументацияПоддержка
Политика конфиденциальностиПользовательское соглашениеПолитика использования «cookies»Согласие субъекта персональных данных
2026 ©
hh/
utils/progress/
..
progress

IBN-Net

8 лет назад
LICENSE

IBN-Net

8 лет назад
MANIFEST.in

IBN-Net

8 лет назад
README.rst

IBN-Net

8 лет назад
demo.gif

IBN-Net

8 лет назад
setup.py

IBN-Net

8 лет назад
test_progress.py

IBN-Net

8 лет назад
README.rst
Easy progress reporting for Python
==================================
 
|pypi|
 
|demo|
 
.. |pypi| image:: https://img.shields.io/pypi/v/progress.svg
.. |demo| image:: https://raw.github.com/verigak/progress/master/demo.gif
:alt: Demo
 
Bars
----
 
There are 7 progress bars to choose from:
 
- ``Bar``
- ``ChargingBar``
- ``FillingSquaresBar``
- ``FillingCirclesBar``
- ``IncrementalBar``
- ``PixelBar``
- ``ShadyBar``
 
To use them, just call ``next`` to advance and ``finish`` to finish:
 
.. code-block:: python
 
from progress.bar import Bar
 
bar = Bar('Processing', max=20)
for i in range(20):
# Do some work
bar.next()
bar.finish()
 
The result will be a bar like the following: ::
 
Processing |############# | 42/100
 
To simplify the common case where the work is done in an iterator, you can
use the ``iter`` method:
 
.. code-block:: python
 
for i in Bar('Processing').iter(it):
# Do some work
 
Progress bars are very customizable, you can change their width, their fill
character, their suffix and more:
 
.. code-block:: python
 
bar = Bar('Loading', fill='@', suffix='%(percent)d%%')
 
This will produce a bar like the following: ::
 
Loading |@@@@@@@@@@@@@ | 42%
 
You can use a number of template arguments in ``message`` and ``suffix``:
 
========== ================================
Name Value
========== ================================
index current value
max maximum value
remaining max - index
progress index / max
percent progress * 100
avg simple moving average time per item (in seconds)
elapsed elapsed time in seconds
elapsed_td elapsed as a timedelta (useful for printing as a string)
eta avg * remaining
eta_td eta as a timedelta (useful for printing as a string)
========== ================================
 
Instead of passing all configuration options on instatiation, you can create
your custom subclass:
 
.. code-block:: python
 
class FancyBar(Bar):
message = 'Loading'
fill = '*'
suffix = '%(percent).1f%% - %(eta)ds'
 
You can also override any of the arguments or create your own:
 
.. code-block:: python
 
class SlowBar(Bar):
suffix = '%(remaining_hours)d hours remaining'
@property
def remaining_hours(self):
return self.eta // 3600
 
 
Spinners
========
 
For actions with an unknown number of steps you can use a spinner:
 
.. code-block:: python
 
from progress.spinner import Spinner
 
spinner = Spinner('Loading ')
while state != 'FINISHED':
# Do some work
spinner.next()
 
There are 5 predefined spinners:
 
- ``Spinner``
- ``PieSpinner``
- ``MoonSpinner``
- ``LineSpinner``
- ``PixelSpinner``
 
 
Other
=====
 
There are a number of other classes available too, please check the source or
subclass one of them to create your own.
 
 
License
=======
 
progress is licensed under ISC