Skip to main content

A progress bar for command line tools.

Project description

A simple way of providing an informative and clean progress bar on the terminal that respects the terminal’s width, has a header, and the current %age for Python 2.6+ and 3.0+

Synopsis

                   reading names.dmp
[========================79.3%===============>          ]

Installation

pip install progress_bar

Usage

Generally, to create any kind of progress bar with a default “size” of 100 arbitrary units:

from progress_bar import initBar

pbar = initBar("title")
pbar(10)  # update % to 10%
pbar(20)  # update % to 20%
pbar(15)  # simulate Microsoft progress effects

del pbar  # move bar to final 100% and write the newline

To easily create a progress bar for reporting (reading) progress in a filehandle that can tell() its offset:

from progress_bar import initBarForInfile

pbar = initBarForInfile("path")
instream = open("path")

for line in iter(instream.readline, ''):
  pbar(instream.tell())

del pbar

With those default arguments, the bar will be as wide as the terminal window. Terminal window width is defined by termios using fcntl, both from the standard library.

Version History

  • 3: fixed the version number so PEP426 issues are avoided (pip install now works…)

  • 2: updated the readme/usage section to reflect tell() issues with Python3

  • 1: initial release

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

progress_bar-3.0.0.tar.gz (4.3 kB view details)

Uploaded Source

File details

Details for the file progress_bar-3.0.0.tar.gz.

File metadata

  • Download URL: progress_bar-3.0.0.tar.gz
  • Upload date:
  • Size: 4.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for progress_bar-3.0.0.tar.gz
Algorithm Hash digest
SHA256 d1610320a139c68596efa6616993851b6f4a93596f451ada4b8f2459b7d9d27c
MD5 a05cbd582b180c296e91d5826d4ffe1d
BLAKE2b-256 aa9947a2e886cdaf93e9fc5dd5cf788730722af0b058fa5d3134227f9ff17c46

See more details on using hashes here.

Supported by

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