A Fast, Extensible Progress Bar for Python and CLI
Go to file
Ivan Ivanov 4539ebc92d Test that tqdm fails when iterating over a csv file 2014-02-07 14:25:36 +13:00
.gitignore Ignore PyCharm IDE config files 2014-02-03 22:08:20 +13:00
LICENSE Initial commit 2013-10-26 11:50:04 -07:00
MANIFEST Update setup.py with version (1.0) 2013-10-26 23:06:04 +03:00
README.md Fixed the link to tox 2014-02-05 21:20:24 +13:00
pytest.ini New lines at the end of files 2014-02-03 22:47:50 +13:00
setup.py Update setup.py with version (1.0) 2013-10-26 23:06:04 +03:00
tests.py Test that tqdm fails when iterating over a csv file 2014-02-07 14:25:36 +13:00
tox.ini New lines at the end of files 2014-02-03 22:47:50 +13:00
tqdm.py Fixed the calculation of rate in format_meter 2014-02-05 21:18:41 +13:00

README.md

tqdm

Instantly make your loops show a progress meter - just wrap any iterator with "tqdm(iterator)", and you're done!

ScreenShot

tqdm (read taqadum, تقدّم) means "progress" in arabic.

You can also use trange(N) as a shortcut for tqdm(xrange(N))

Here's the doc:

def tqdm(iterable, desc='', total=None, leave=False, mininterval=0.5, miniters=1):
    """
    Get an iterable object, and return an iterator which acts exactly like the
    iterable, but prints a progress meter and updates it every time a value is
    requested.
    'desc' can contain a short string, describing the progress, that is added
    in the beginning of the line.
    'total' can give the number of expected iterations. If not given,
    len(iterable) is used if it is defined.
    If leave is False, tqdm deletes its traces from screen after it has finished
    iterating over all elements.
    If less than mininterval seconds or miniters iterations have passed since
    the last progress meter update, it is not updated again.
    """

def trange(*args, **kwargs):
    """A shortcut for writing tqdm(xrange)"""
    return tqdm(xrange(*args), **kwargs)

Running tests

Please make sure tox (http://tox.testrun.org/) is installed and type tox from the command line