fix `repr()` & `format_dict` when disabled

- fixes #624
This commit is contained in:
Casper da Costa-Luis 2021-02-09 17:48:53 +00:00
parent a774e3ff8d
commit 42de6bdfc9
No known key found for this signature in database
GPG Key ID: 986B408043AE090D
1 changed files with 6 additions and 4 deletions

View File

@ -10,7 +10,7 @@ Usage:
from __future__ import absolute_import, division
import sys
from collections import OrderedDict
from collections import OrderedDict, defaultdict
from contextlib import contextmanager
from datetime import datetime, timedelta
from numbers import Number
@ -1420,14 +1420,16 @@ class tqdm(Comparable):
@property
def format_dict(self):
"""Public API for read-only member access."""
if self.disable and not hasattr(self, 'unit'):
return defaultdict(lambda: None, {
'n': self.n, 'total': self.total, 'elapsed': 0, 'unit': 'it'})
if self.dynamic_ncols:
self.ncols, self.nrows = self.dynamic_ncols(self.fp)
ncols, nrows = self.ncols, self.nrows
return {
'n': self.n, 'total': self.total,
'elapsed': self._time() - self.start_t if hasattr(self, 'start_t') else 0,
'ncols': ncols, 'nrows': nrows, 'prefix': self.desc, 'ascii': self.ascii,
'unit': self.unit, 'unit_scale': self.unit_scale,
'ncols': self.ncols, 'nrows': self.nrows, 'prefix': self.desc,
'ascii': self.ascii, 'unit': self.unit, 'unit_scale': self.unit_scale,
'rate': self._ema_dn() / self._ema_dt() if self._ema_dt() else None,
'bar_format': self.bar_format, 'postfix': self.postfix,
'unit_divisor': self.unit_divisor, 'initial': self.initial,