mirror of https://github.com/tqdm/tqdm.git
Add option to disable progress bar. Should fix GH-1
This commit is contained in:
parent
d16381a911
commit
0679775478
|
@ -33,7 +33,7 @@ pip install -e git+https://github.com/tqdm/tqdm.git#egg=master
|
|||
|
||||
```python
|
||||
def tqdm(iterable, desc=None, total=None, leave=False, file=sys.stderr,
|
||||
ncols=None, mininterval=0.1, miniters=None):
|
||||
ncols=None, mininterval=0.1, miniters=None, disable=False):
|
||||
"""
|
||||
Decorate an iterable object, returning an iterator which acts exactly
|
||||
like the orignal iterable, but prints a dynamically updating
|
||||
|
@ -63,6 +63,8 @@ def tqdm(iterable, desc=None, total=None, leave=False, file=sys.stderr,
|
|||
Minimum progress update interval, in seconds [default: 0.1].
|
||||
miniters : int, optional
|
||||
Minimum progress update interval, in iterations [default: None].
|
||||
disable : bool
|
||||
Disable the progress bar if True [default: False].
|
||||
|
||||
Returns
|
||||
-------
|
||||
|
|
|
@ -52,9 +52,9 @@ def format_meter(n, total, elapsed, ncols=None, prefix=''):
|
|||
N_BARS = max(1, ncols - len(l_bar) - len(r_bar)) if ncols else 10
|
||||
bar_length, frac_bar_length = divmod(int(frac * N_BARS * 8), 8)
|
||||
|
||||
try:
|
||||
try: # pragma: no cover
|
||||
unich = unichr
|
||||
except NameError:
|
||||
except NameError: # pragma: no cover
|
||||
unich = chr
|
||||
|
||||
bar = unich(0x2588)*bar_length
|
||||
|
@ -83,7 +83,7 @@ class StatusPrinter(object):
|
|||
|
||||
|
||||
def tqdm(iterable, desc=None, total=None, leave=False, file=sys.stderr,
|
||||
ncols=None, mininterval=0.1, miniters=None):
|
||||
ncols=None, mininterval=0.1, miniters=None, disable=False):
|
||||
"""
|
||||
Decorate an iterable object, returning an iterator which acts exactly
|
||||
like the orignal iterable, but prints a dynamically updating
|
||||
|
@ -113,19 +113,24 @@ def tqdm(iterable, desc=None, total=None, leave=False, file=sys.stderr,
|
|||
Minimum progress update interval, in seconds [default: 0.1].
|
||||
miniters : int, optional
|
||||
Minimum progress update interval, in iterations [default: None].
|
||||
disable : bool
|
||||
Disable the progress bar if True [default: False].
|
||||
|
||||
Returns
|
||||
-------
|
||||
out : decorated iterator.
|
||||
"""
|
||||
|
||||
if disable:
|
||||
for obj in iterable:
|
||||
yield obj
|
||||
return
|
||||
|
||||
if total is None:
|
||||
try:
|
||||
total = len(iterable)
|
||||
except (TypeError, AttributeError):
|
||||
total = None
|
||||
# not good for slow iterators
|
||||
# elif not miniters:
|
||||
# miniters = int(total/100)
|
||||
|
||||
if miniters is None:
|
||||
miniters = 0
|
||||
|
@ -151,10 +156,8 @@ def tqdm(iterable, desc=None, total=None, leave=False, file=sys.stderr,
|
|||
if cur_t - last_print_t >= mininterval:
|
||||
sp.print_status(format_meter(
|
||||
n, total, cur_t-start_t, ncols, prefix))
|
||||
|
||||
if dynamic_miniters:
|
||||
miniters = max(miniters, n - last_print_n + 1)
|
||||
|
||||
last_print_n = n
|
||||
last_print_t = cur_t
|
||||
|
||||
|
@ -176,7 +179,7 @@ def trange(*args, **kwargs):
|
|||
"""
|
||||
try:
|
||||
f = xrange
|
||||
except NameError:
|
||||
except NameError: # pragma: no cover
|
||||
f = range
|
||||
|
||||
return tqdm(f(*args), **kwargs)
|
||||
|
|
|
@ -50,7 +50,7 @@ def test_iterate_over_csv_rows():
|
|||
test_csv_file = StringIO()
|
||||
writer = csv.writer(test_csv_file)
|
||||
for i in range(3):
|
||||
writer.writerow(['test']*3)
|
||||
writer.writerow(['test'] * 3)
|
||||
test_csv_file.seek(0)
|
||||
|
||||
# Test that nothing fails if we iterate over rows
|
||||
|
@ -118,3 +118,11 @@ def test_min_iters():
|
|||
our_file.write('blank\n')
|
||||
our_file.seek(0)
|
||||
assert '\nblank\nblank\n' in our_file.read()
|
||||
|
||||
|
||||
def test_disable():
|
||||
our_file = StringIO()
|
||||
for i in tqdm(range(3), file=our_file, disable=True):
|
||||
pass
|
||||
our_file.seek(0)
|
||||
assert our_file.read() == ""
|
||||
|
|
Loading…
Reference in New Issue