Skip to main content

A terminal progress printing utility

Project description

PyProgress

General Use

A simple interface for terminal based progress updates

Begin by creating an instance with the starting and ending value

import os

files = os.listdir('.')
bar = ProgressBar(0, len(files))
for file in files:
    bar.iterbegin('Processing file: {}'.format(file))
    process(file)
    bar.iterdone()
bar.done()

Manually call ProgressBar.iterbegin([message]) before an iteration starts and call ProgressBar.iterend() when it completes or ProgressBar.iterfail() if it fails

When all items complete use ProgressBar.done() to print a summary

Alternative Use – Context Manager

ProgressBar instances can also be used as context managers

use a with statement on every iteration

import os

files = os.listdir('.')
bar = ProgressBar(0, len(files), supress_exc=True)
for file in files:
    with bar:
        process(file)
bar.done()

Using the supress_exc=True argument will report statistic for failures from raised exceptions but not raise the exception itself

This is not necessary to use bar as a Context Manager but you must use it as a Context Manager to get the exception suppressing behavior

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyprogress_elunico-0.1.0.tar.gz (3.8 kB view hashes)

Uploaded Source

Built Distribution

pyprogress_elunico-0.1.0-py3-none-any.whl (4.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page