45 lines
1.1 KiB
Python
45 lines
1.1 KiB
Python
|
"""
|
||
|
Enables multiple commonly used features.
|
||
|
|
||
|
Method resolution order:
|
||
|
|
||
|
- `tqdm.autonotebook` without import warnings
|
||
|
- `tqdm.asyncio` on Python3.6+
|
||
|
- `tqdm.std` base class
|
||
|
|
||
|
Usage:
|
||
|
>>> from tqdm.auto import trange, tqdm
|
||
|
>>> for i in trange(10):
|
||
|
... ...
|
||
|
"""
|
||
|
import sys
|
||
|
import warnings
|
||
|
|
||
|
from .std import TqdmExperimentalWarning
|
||
|
|
||
|
with warnings.catch_warnings():
|
||
|
warnings.simplefilter("ignore", category=TqdmExperimentalWarning)
|
||
|
from .autonotebook import tqdm as notebook_tqdm
|
||
|
from .autonotebook import trange as notebook_trange
|
||
|
|
||
|
if sys.version_info[:2] < (3, 6):
|
||
|
tqdm = notebook_tqdm
|
||
|
trange = notebook_trange
|
||
|
else: # Python3.6+
|
||
|
from .asyncio import tqdm as asyncio_tqdm
|
||
|
from .std import tqdm as std_tqdm
|
||
|
|
||
|
if notebook_tqdm != std_tqdm:
|
||
|
class tqdm(notebook_tqdm, asyncio_tqdm): # pylint: disable=inconsistent-mro
|
||
|
pass
|
||
|
else:
|
||
|
tqdm = asyncio_tqdm
|
||
|
|
||
|
def trange(*args, **kwargs):
|
||
|
"""
|
||
|
A shortcut for `tqdm.auto.tqdm(range(*args), **kwargs)`.
|
||
|
"""
|
||
|
return tqdm(range(*args), **kwargs)
|
||
|
|
||
|
__all__ = ["tqdm", "trange"]
|