Files
Trancribe/venv/lib/python3.12/site-packages/tqdm/__pycache__/std.cpython-312.pyc

590 lines
63 KiB
Plaintext
Raw Normal View History

<EFBFBD>
$n!j<><6A><00><00><><00>dZddlZddlmZmZddlmZddlmZmZm Z ddl
m Z ddl m Z ddl mZdd lmZd
d lmZd
d lmZmZmZmZmZmZmZmZmZmZmZmZd Z gd<0E>Z!Gd<0F>de"<22>Z#Gd<11>de$<24>Z%Gd<13>de&<26>Z'Gd<15>de'e(<28>Z)Gd<17>de'e*<2A>Z+Gd<19>de'e,<2C>Z-d<1B>Z.Gd<1C>d<1D>Z/Gd<1E>d<1F>Z0Gd <20>d!<21>Z1Gd"<22>d#e<15>Z2d$<24>Z3y)%z<>
Customisable progressbar decorator for iterators.
Includes a default `range` iterator printing to `stderr`.
Usage:
>>> from tqdm import trange, tqdm
>>> for i in trange(10):
... ...
<EFBFBD>N)<02> OrderedDict<63> defaultdict)<01>contextmanager)<03>datetime<6D> timedelta<74>timezone)<01>Number)<01>time)<01>warn)<01>WeakSet<65>)<01>TMonitor) <0C>CallbackIOWrapper<65>
Comparable<EFBFBD>DisableOnWriteError<6F> FormatReplace<63>SimpleTextIOWrapper<65> _is_ascii<69>_screen_shape_wrapper<65>_supports_unicode<64> _term_move_up<75>disp_len<65> disp_trim<69>envwrapz*https://github.com/tqdm/tqdm#contributions)<08>tqdm<64>trange<67> TqdmTypeError<6F> TqdmKeyError<6F> TqdmWarning<6E>TqdmExperimentalWarning<6E>TqdmDeprecationWarning<6E>TqdmMonitorWarningc<00> <00>eZdZy)rN<><03>__name__<5F>
__module__<EFBFBD> __qualname__<5F><00><00>J/home/jean/linux-transcriber/venv/lib/python3.12/site-packages/tqdm/std.pyrr <00><00><00>r)rc<00> <00>eZdZy)rNr$r(r)r*rr$r+r)rc<00>$<00><00>eZdZdZd<03>fd<02> Z<04>xZS)rzqbase class for all tqdm warnings.
Used for non-external-code-breaking errors, such as garbled printing.
c<00><><00><01>|<02>@|d|jjzdzt|<01>j<00>zdz<00>yt<00>|<00>|<01>y)N<>
<EFBFBD>: )<06> __class__r%<00>str<74>rstrip<69>super<65>__init__)<04>self<6C>msg<73>fp_writer1s <20>r*r5zTqdmWarning.__init__-sH<00><><00> <13> <1F> <14>T<EFBFBD>D<EFBFBD>N<EFBFBD>N<EFBFBD>3<>3<>3<>d<EFBFBD>:<3A>S<EFBFBD><13>X<EFBFBD>_<EFBFBD>_<EFBFBD>=N<>N<>QU<51>U<> V<> <11>G<EFBFBD> <1C>S<EFBFBD> !r)<00>N)r%r&r'<00>__doc__r5<00> __classcell__)r1s@r*rr(s<00><><00><08>"<22>"r)rc<00><00>eZdZdZy)r z(beta feature, unstable API and behaviourN<72>r%r&r'r:r(r)r*r r 4s<00><00>2<>r)r c<00> <00>eZdZy)r!Nr$r(r)r*r!r!9s<00><00>r)r!c<00><00>eZdZdZy)r"z>tqdm monitor errors which do not affect external functionalityNr=r(r)r*r"r">s<00><00>H<>r)r"c<00>J<00> ddlm}||i|<01><01>S#ttf$rYywxYw)zthreading RLockr<00><01>RLockN)<04> threadingrB<00> ImportError<6F>OSError)<03>args<67>kwargsrBs r*<00>TRLockrHCs1<00><00> <0A>#<23><14>d<EFBFBD>%<25>f<EFBFBD>%<25>%<25><> <17><17> !<21> <0A> <0C> <0A>s <00> <00>"<03>"c<00>\<00>eZdZdZe<04>Zd<02>Zd<03>Zd<04>Zd<05>Z d<06>Z
e d<07><00>Z e d<08><00>Z y )
<EFBFBD>TqdmDefaultWriteLocka<6B>
Provide a default write lock for thread and multiprocessing safety.
Works only on platforms supporting `fork` (so Windows is excluded).
You must initialise a `tqdm` or `TqdmDefaultWriteLock` instance
before forking in order for the write lock to work.
On Windows, you need to supply the lock from the parent to the children as
an argument to joblib or the parallelism lib you use.
c<00><00>t|<00>}|j}|<02>|j<00>|j<00>|j|jfD<00>cgc]}|<03><01>|<03><02> c}|_|<02>|j <00>yycc}wr9)<07>type<70>th_lock<63>acquire<72>create_mp_lock<63>mp_lock<63>locks<6B>release)r6<00>cls<6C> root_lock<63>lks r*r5zTqdmDefaultWriteLock.__init__Zst<00><00><13>4<EFBFBD>j<EFBFBD><03><17>K<EFBFBD>K<EFBFBD> <09> <14> <20> <15> <1D> <1D> <1F> <0B><1A><1A><1C>$'<27>K<EFBFBD>K<EFBFBD><13><1B><1B>#=<3D>P<>R<EFBFBD><12><1E>b<EFBFBD>P<><04>
<EFBFBD> <14> <20> <15> <1D> <1D> <1F> !<21><>Qs <00>A<<04>A<c<00>J<00>|jD]}|j|i|<02><01><00>yr9)rQrN)r6<00>a<>k<>locks r*rNzTqdmDefaultWriteLock.acquirefs(<00><00><18>J<EFBFBD>J<EFBFBD> "<22>D<EFBFBD> <18>D<EFBFBD>L<EFBFBD>L<EFBFBD>!<21> !<21>q<EFBFBD> !<21> "r)c<00>R<00>|jddd<01>D]}|j<00><00>y)N<><4E><EFBFBD><EFBFBD><EFBFBD>)rQrR)r6rYs r*rRzTqdmDefaultWriteLock.releasejs'<00><00><18>J<EFBFBD>J<EFBFBD>t<EFBFBD><12>t<EFBFBD>$<24> <1B>D<EFBFBD> <10>L<EFBFBD>L<EFBFBD>N<EFBFBD> r)c<00>$<00>|j<00>yr9)rN<00>r6s r*<00> __enter__zTqdmDefaultWriteLock.__enter__n<00> <00><00> <0C> <0C> <0C>r)c<00>$<00>|j<00>yr9)rR)r6<00>excs r*<00>__exit__zTqdmDefaultWriteLock.__exit__qr_r)c<00>|<00>t|d<01>s ddlm}|<01>|_yy#tt
f$r
d|_YywxYw)NrPrrA)<06>hasattr<74>multiprocessingrBrPrDrE)rSrBs r*rOz#TqdmDefaultWriteLock.create_mp_lockts?<00><00><16>s<EFBFBD>I<EFBFBD>&<26> #<23>1<>#<23>g<EFBFBD><03> <0B>'<27><> <20><17>)<29> #<23>"<22><03> <0B> #<23>s <00>"<00>;<03>;c<00>D<00>t|d<01>sJ<00>tdtd<03><04>y)NrMz!create_th_lock not needed anymore<72><00><01>
stacklevel)rdr r!<00>rSs r*<00>create_th_lockz#TqdmDefaultWriteLock.create_th_lock}s!<00><00><16>s<EFBFBD>I<EFBFBD>&<26>&<26>&<26> <0C> 0<>2H<32>UV<55>Wr)N)r%r&r'r:rHrMr5rNrRr^rb<00> classmethodrOrkr(r)r*rJrJLsS<00><00><08><15>h<EFBFBD>G<EFBFBD>
 <20>"<22><1B><17><17><11>#<23><11>#<23><11>X<01><11>Xr)rJc <00><><00>eZdZdZdZddj eeeddd<07><00><00>zZ dZ
d Z d
Z d d d dddddd<13>Z de dfd<16>Zed<17><00>Zej"d<18><00>Zd<19>Zy)<1A>Bara<72>
`str.format`-able bar with format specifiers: `[width][type]`
- `width`
+ unspecified (default): use `self.default_len`
+ `int >= 0`: overrides `self.default_len`
+ `int < 0`: subtract from `self.default_len`
- `type`
+ `a`: ascii (`charset=self.ASCII` override)
+ `u`: unicode (`charset=self.UTF` override)
+ `b`: blank (`charset=" "` override)
z 123456789#<23> <20>i<>%i<>%r[z zz[38;2;%d;%d;%dmzzzzzzzz)<08>BLACK<43>RED<45>GREEN<45>YELLOW<4F>BLUE<55>MAGENTA<54>CYAN<41>WHITE<54>
Nc<00><><00>d|cxkrdks*ntdtd<04><05>tdtd|<01><00>}|dkDsJ<00>||_||_||_||_y)Nrr zclamping frac to range [0, 1]rgrh)r r<00>max<61>min<69>frac<61> default_len<65>charset<65>colour)r6r}r~rr<>s r*r5z Bar.__init__<5F>sU<00><00><10>D<EFBFBD>~<7E>A<EFBFBD>~<7E> <10>0<>+<2B>!<21> L<><16>q<EFBFBD>#<23>a<EFBFBD><14>,<2C>'<27>D<EFBFBD><1A>Q<EFBFBD><EFBFBD><1E><EFBFBD><18><04> <09>&<26><04><18><1E><04> <0C><1C><04> r)c<00><00>|jSr9)<01>_colourr]s r*r<>z
Bar.colour<75>s <00><00><13>|<7C>|<7C>r)c <00><><00>|sd|_y |j<00>|jvr#|j|j<00>|_y|ddk(r?t|<01>dk(r1|jt d<04>|dd|dd|ddfD<00><00>z|_yt <00>#t tf$r<td|<01>d d
j|j<00><00>d <0B>td <0C> <0A>d|_YywxYw)Nr<00>#<23>c3<00>4K<00>|]}t|d<00><00><01><00>y<01>w)<02>N)<01>int)<02>.0<EFBFBD>is r*<00> <genexpr>zBar.colour.<locals>.<genexpr><3E>s<00><00><><00>7N<01>#$<24>C<EFBFBD><01>2<EFBFBD>J<EFBFBD>7N<01>s<00>r <00><00>zUnknown colour (z"); valid choices: [hex (#00ff00), <20>, <20>]rgrh) r<><00>upper<65>COLOURS<52>len<65>
COLOUR_RGB<EFBFBD>tuple<6C>KeyError<6F>AttributeErrorr <00>joinr)r6<00>values r*r<>z
Bar.colour<75>s<><00><00><14><1F>D<EFBFBD>L<EFBFBD> <12> <20><14>{<7B>{<7B>}<7D><04> <0C> <0C>,<2C>#<23>|<7C>|<7C>E<EFBFBD>K<EFBFBD>K<EFBFBD>M<EFBFBD>:<3A><04> <0C><16>q<EFBFBD><18>S<EFBFBD><1F>S<EFBFBD><15>Z<EFBFBD>1<EFBFBD>_<EFBFBD>#<23><EFBFBD><EFBFBD><15>7N<01>).<2E>q<EFBFBD><11><1A>U<EFBFBD>1<EFBFBD>Q<EFBFBD>Z<EFBFBD><15>q<EFBFBD><11><1A>(L<>7N<01>2N<01> N<01><04> <0C><1F><0E><><18>.<2E>)<29> <20> <10>#<23>E<EFBFBD>7<EFBFBD>+%<25>%)<29>Y<EFBFBD>Y<EFBFBD>t<EFBFBD>|<7C>|<7C>%<<3C>$=<3D>Q<EFBFBD>@<01>AL<41>YZ<59> \<01><1F>D<EFBFBD>L<EFBFBD> <20>s<00>>B<00> AB<00>B<00>AC#<03>"C#c<00>R<00>|ro|dj<00>} |j|j|jd<02>|}|dd}|r t |<01>}|dkr5||jz }n%|j}n|j
}|j}t|<03>dz
}tt |j|z|z<00>|<05>\}}|d|z}||kr|||z|d||z
dz
zz}|jr|j|z|jzS|S#t$r|j
}Y<00><>wxYw)Nr[)rW<00>u<>brr ) <0A>lower<65>ASCII<49>UTF<54>BLANKr<4B>rr<>r~r<><00>divmodr}r<><00> COLOUR_RESET) r6<00> format_spec<65>_typer<00>N_BARS<52>nsyms<6D>
bar_length<EFBFBD>frac_bar_length<74>ress r*<00>
__format__zBar.__format__<5F>s9<00><00> <16><1F><02>O<EFBFBD>)<29>)<29>+<2B>E<EFBFBD> /<2F> $<24>
<EFBFBD>
<EFBFBD><14><18><18><04>
<EFBFBD>
<EFBFBD>K<>E<EFBFBD>R<><07>*<2A>#<23>2<EFBFBD>.<2E> <0B><1A><1C>[<5B>)<29><06><19>A<EFBFBD>:<3A><1A>d<EFBFBD>.<2E>.<2E>.<2E>F<EFBFBD><1D>)<29>)<29><06><1A>l<EFBFBD>l<EFBFBD>G<EFBFBD><19>%<25>%<25>F<EFBFBD><13>G<EFBFBD> <0C>q<EFBFBD> <20><05>&,<2C>S<EFBFBD><14><19><19>V<EFBFBD>1C<31>e<EFBFBD>1K<31>-L<>e<EFBFBD>&T<>#<23>
<EFBFBD>O<EFBFBD><15>b<EFBFBD>k<EFBFBD>J<EFBFBD>&<26><03> <15><06> <1E><15><07><0F>0<>0<>7<EFBFBD>1<EFBFBD>:<3A><16>*<2A>AT<41>WX<57>AX<41>3Y<33>Y<>C<EFBFBD>8<<3C> <0B> <0B>t<EFBFBD>{<7B>{<7B>S<EFBFBD> <20>4<EFBFBD>#4<>#4<>4<>L<><13>L<><4C>)<1C> '<27><1E>,<2C>,<2C><07> '<27>s<00>'D<00>D&<03>%D&)r%r&r'r:r<>r<><00>map<61>chr<68>ranger<65>r<>r<>r<>r<>r5<00>propertyr<79><00>setterr<72>r(r)r*rnrn<00>s<><00><00> <08> <1A>E<EFBFBD>
<0A><02><07><07><03>C<EFBFBD><15>v<EFBFBD>v<EFBFBD>r<EFBFBD>!:<3A>;<3B><<3C>
<<3C>C<EFBFBD> <10>E<EFBFBD><1C>L<EFBFBD>&<26>J<EFBFBD>"<22>:<3A>
<EFBFBD>#<23>Z<EFBFBD>J<EFBFBD>!<21>J<EFBFBD>8<>G<EFBFBD>*,<2C>S<EFBFBD><14><1D><0E><1C><0E><1C> <0C>]<5D>]<5D> <20><13> <20>"Mr)rnc<00> <00>eZdZdZdd<02>Zdd<04>Zy)<07>EMAa[
Exponential moving average: smoothing to give progressively lower
weights to older values.
Parameters
----------
smoothing : float, optional
Smoothing factor in range [0, 1], [default: 0.3].
Increase to give more weight to recent values.
Ranges from 0 (yields old value) to 1 (yields new value).
c<00>.<00>||_d|_d|_y)Nr<00><03>alpha<68>last<73>calls)r6<00> smoothings r*r5z EMA.__init__<5F>s<00><00><1E><04>
<EFBFBD><15><04> <09><16><04>
r)Nc<00><00>d|jz
}|<01>9|j|z||jzz|_|xjdz c_|jr|jd||jzz
z S|jS)zk
Parameters
----------
x : float
New value to include in EMA.
r r<>)r6<00>x<>betas r*<00>__call__z EMA.__call__<5F>sl<00><00><11>4<EFBFBD>:<3A>:<3A>~<7E><04> <0C>=<3D><1C>
<EFBFBD>
<EFBFBD>Q<EFBFBD><0E><14><04> <09> <09>)9<>9<>D<EFBFBD>I<EFBFBD> <10>J<EFBFBD>J<EFBFBD>!<21>O<EFBFBD>J<EFBFBD>7;<3B>z<EFBFBD>z<EFBFBD>t<EFBFBD>y<EFBFBD>y<EFBFBD>A<EFBFBD><04><04>
<EFBFBD>
<EFBFBD> 2<>2<>3<>P<>t<EFBFBD>y<EFBFBD>y<EFBFBD>Pr))<01>333333<33>?r9)r%r&r'r:r5r<>r(r)r*r<>r<><00>s<00><00>
<08><17>
Qr)r<>c
<00><00>eZdZdZdZdZe<06>Zed/d<04><01>Z ed<05><00>Z
ed<06><00>Z ed<07><00>Z e d0d<08><01>Z d <09>Zed1d
<EFBFBD><01>Zed <0B><00>Zed2d <0C><01>Zeed3d <0A><01><00>Zed<0E><00>Zed<0F><00>Zed<10><00>Zeddeeeeed<13><05><14> d4d<15><01>Zd<16>Zd<17>Zd<18>Zd<19>Zd<1A>Z d<1B>Z!d<1C>Z"d<1D>Z#e$d<1E><00>Z%d<1F>Z&d <20>Z'd5d!<21>Z(d"<22>Z)d6d#<23>Z*d7d$<24>Z+d%<25>Z,d1d&<26>Z-d8d'<27>Z.d8d(<28>Z/d8d)<29>Z0d9d*<2A>Z1d+<2B>Z2e$d,<2C><00>Z3d:d-<2D>Z4eed8d.<2E><01><00>Z5y);rad
Decorate an iterable object, returning an iterator which acts exactly
like the original iterable, but prints a dynamically updating
progressbar every time a value is requested.
Parameters
----------
iterable : iterable, optional
Iterable to decorate with a progressbar.
Leave blank to manually manage the updates.
desc : str, optional
Prefix for the progressbar.
total : int or float, optional
The number of expected iterations. If unspecified,
len(iterable) is used if possible. If float("inf") or as a last
resort, only basic progress statistics are displayed
(no ETA, no progressbar).
If `gui` is True and this parameter needs subsequent updating,
specify an initial arbitrary large positive number,
e.g. 9e9.
leave : bool, optional
If [default: True], keeps all traces of the progressbar
upon termination of iteration.
If `None`, will leave only if `position` is `0`.
file : `io.TextIOWrapper` or `io.StringIO`, optional
Specifies where to output the progress messages
(default: sys.stderr). Uses `file.write(str)` and `file.flush()`
methods. For encoding, see `write_bytes`.
ncols : int, optional
The width of the entire output message. If specified,
dynamically resizes the progressbar to stay within this bound.
If unspecified, attempts to use environment width. The
fallback is a meter width of 10 and no limit for the counter and
statistics. If 0, will not print any meter (only stats).
mininterval : float, optional
Minimum progress display update interval [default: 0.1] seconds.
maxinterval : float, optional
Maximum progress display update interval [default: 10] seconds.
Automatically adjusts `miniters` to correspond to `mininterval`
after long display update lag. Only works if `dynamic_miniters`
or monitor thread is enabled.
miniters : int or float, optional
Minimum progress display update interval, in iterations.
If 0 and `dynamic_miniters`, will automatically adjust to equal
`mininterval` (more CPU efficient, good for tight loops).
If > 0, will skip display of specified number of iterations.
Tweak this and `mininterval` to get very efficient loops.
If your progress is erratic with both fast and slow iterations
(network, skipping items, etc) you should set miniters=1.
ascii : bool or str, optional
If unspecified or False, use unicode (smooth blocks) to fill
the meter. The fallback is to use ASCII characters " 123456789#".
disable : bool, optional
Whether to disable the entire progressbar wrapper
[default: False]. If set to None, disable on non-TTY.
unit : str, optional
String that will be used to define the unit of each iteration
[default: it].
unit_scale : bool or int or float, optional
If 1 or True, the number of iterations will be reduced/scaled
automatically and a metric prefix following the
International System of Units standard will be added
(kilo, mega, etc.) [default: False]. If any other non-zero
number, will scale `total` and `n`.
dynamic_ncols : bool, optional
If set, constantly alters `ncols` and `nrows` to the
environment (allowing for window resizes) [default: False].
smoothing : float, optional
Exponential moving average smoothing factor for speed estimates
(ignored in GUI mode). Ranges from 0 (average speed) to 1
(current/instantaneous speed) [default: 0.3].
bar_format : str, optional
Specify a custom bar string formatting. May impact performance.
[default: '{l_bar}{bar}{r_bar}'], where
l_bar='{desc}: {percentage:3.0f}%|' and
r_bar='| {n_fmt}/{total_fmt} [{elapsed}<{remaining}, '
'{rate_fmt}{postfix}]'
Possible vars: l_bar, bar, r_bar, n, n_fmt, total, total_fmt,
percentage, elapsed, elapsed_s, ncols, nrows, desc, unit,
rate, rate_fmt, rate_noinv, rate_noinv_fmt,
rate_inv, rate_inv_fmt, postfix, unit_divisor,
remaining, remaining_s, eta.
Note that a trailing ": " is automatically removed after {desc}
if the latter is empty.
initial : int or float, optional
The initial counter value. Useful when restarting a progress
bar [default: 0]. If using float, consider specifying `{n:.3f}`
or similar in `bar_format`, or specifying `unit_scale`.
position : int, optional
Specify the line offset to print this bar (starting from 0)
Automatic if unspecified.
Useful to manage multiple bars at once (eg, from threads).
postfix : dict or *, optional
Specify additional stats to display at the end of the bar.
Calls `set_postfix(**postfix)` if possible (dict).
unit_divisor : float, optional
[default: 1000], ignored unless `unit_scale` is True.
write_bytes : bool, optional
Whether to write bytes. If (default: False) will write unicode.
lock_args : tuple, optional
Passed to `refresh` for intermediate output
(initialisation, iterating, and updating).
nrows : int, optional
The screen height. If specified, hides nested bars outside this
bound. If unspecified, attempts to use environment height.
The fallback is 20.
colour : str, optional
Bar colour (e.g. 'green', '#00ff00').
delay : float, optional
Don't display until [default: 0] seconds have elapsed.
gui : bool, optional
WARNING: internal parameter - do not use.
Use tqdm.gui.tqdm(...) instead. If set, will attempt to use
matplotlib animations for a graphical output [default: False].
Returns
-------
out : decorated iterator.
ryNc<00><><00>dD]R}t|<00>dkr=t|<00>dkr$t|<00>dkr |d<05>|<03>|<01><00>cS|d<06>|<03>|<01><00>cS|d<07>|<03>|<01><00>cS||z}<00>T|d<08>d |<01><00>S)
a<EFBFBD>
Formats a number (greater than unity) with SI Order of Magnitude
prefixes.
Parameters
----------
num : float
Number ( >= 1) to format.
suffix : str, optional
Post-postfix [default: ''].
divisor : float, optional
Divisor between prefixes [default: 1000].
Returns
-------
out : str
Number with Order of Magnitude SI unit postfix.
)rprX<00>M<>G<>T<>P<>E<>Zg<<3C>@g<><67><EFBFBD><EFBFBD><EFBFBD><EFBFBD>X@g=
ףp<EFBFBD>#@z1.2fz2.1f<EFBFBD>3.0fz3.1f<EFBFBD>Y)<01>abs)<04>num<75>suffix<69>divisor<6F>units r*<00> format_sizeofztqdm.format_sizeofqs<><00><00>(<<3C> <1B>D<EFBFBD><12>3<EFBFBD>x<EFBFBD>%<25><1F><16>s<EFBFBD>8<EFBFBD>e<EFBFBD>#<23><1A>3<EFBFBD>x<EFBFBD>%<25>'<27>"%<25>d<EFBFBD><1A>D<EFBFBD>6<EFBFBD>&<26><18>:<3A>:<3A>!<21>$<24>Z<EFBFBD><04>v<EFBFBD>f<EFBFBD>X<EFBFBD>6<>6<><1D>d<EFBFBD><1A>D<EFBFBD>6<EFBFBD>&<26><18>2<>2<> <0F>7<EFBFBD>N<EFBFBD>C<EFBFBD> <1B><16>d<EFBFBD><1A>1<EFBFBD>V<EFBFBD>H<EFBFBD>%<25>%r)c<00><><00>|dkrdnd}ttt|<00><00>d<04>\}}t|d<04>\}}|r|<01>|d<05>d|d<07>d|d<07><04>S|<01>|d<07>d|d<07><04>S)z<>
Formats a number of seconds as a clock time, [H:]MM:SS
Parameters
----------
t : int
Number of seconds.
Returns
-------
out : str
[H:]MM:SS
r<00>-rp<00><<00>d<>:<3A>02d)r<>r<>r<>)<06>t<>sign<67>mins<6E>s<>h<>ms r*<00>format_intervalztqdm.format_interval<61>st<00><00><18>!<21>e<EFBFBD>s<EFBFBD><12><04><18><13>S<EFBFBD><11>V<EFBFBD><1B>b<EFBFBD>)<29><07><04>a<EFBFBD><15>d<EFBFBD>B<EFBFBD><1F><04><01>1<EFBFBD>12<31>$<24><16><01>!<21>u<EFBFBD>A<EFBFBD>a<EFBFBD><03>W<EFBFBD>A<EFBFBD>a<EFBFBD><03>W<EFBFBD>-<2D>P<>4<EFBFBD>&<26><11>3<EFBFBD><07>q<EFBFBD><11>3<EFBFBD><07>8P<38>Pr)c<00><><00>|d<01>jdd<03>jdd<05>}t|<00>}t|<01>t|<00>kr|S|S)z<>
Intelligent scientific notation (.3g).
Parameters
----------
n : int or float or Numeric
A Number.
Returns
-------
out : str
Formatted number.
z.3gze+0ze+ze-0ze-)<03>replacer2r<>)<02>n<>fs r*<00>
format_numztqdm.format_num<75>sI<00><00><11><13>g<EFBFBD> <1E> <1E>u<EFBFBD>d<EFBFBD> +<2B> 3<> 3<>E<EFBFBD>4<EFBFBD> @<40><01> <0F><01>F<EFBFBD><01><17><01>F<EFBFBD>S<EFBFBD><11>V<EFBFBD>O<EFBFBD>q<EFBFBD>*<2A><11>*r)c<00><00><02><03><04><05>|<00>t<00>dd<02><00><00><03>tjtjfvrBttjdd<03><00><00>ttjdd<04><00><00><00><02>fd<05><08>dg<01><05><04>fd<07>}|S)z<>
Manage the printing and in-place updating of a line of characters.
Note that if the string is longer than a line, then in-place
updating may not work (it will print a new line at each refresh).
<20>flushc<00><00>yr9r(r(r)r*<00><lambda>z%tqdm.status_printer.<locals>.<lambda><3E><00><00>r)c<00><00>yr9r(r(r)r*r<>z%tqdm.status_printer.<locals>.<lambda><3E>r<>r)c<00><00>yr9r(r(r)r*r<>z%tqdm.status_printer.<locals>.<lambda><3E>r<>r)c<00>H<00><02><00>jt|<00><00><00><02>yr9)<02>writer2)r<><00>fp<66>fp_flushs <20><>r*r8z%tqdm.status_printer.<locals>.fp_write<74>s<00><><00> <0E>H<EFBFBD>H<EFBFBD>S<EFBFBD><11>V<EFBFBD> <1C> <14>Jr)rc<00>h<00><02>t|<00>}<00>d|zdt<00>d|z
d<03>zz<00>|<01>d<y)N<> ror)rr{)r<><00>len_sr8<00>last_lens <20><>r*<00> print_statusz)tqdm.status_printer.<locals>.print_status<75>s;<00><><00><1C>Q<EFBFBD>K<EFBFBD>E<EFBFBD> <14>T<EFBFBD>A<EFBFBD>X<EFBFBD><13>s<EFBFBD>8<EFBFBD>A<EFBFBD>;<3B><15>+><3E><01>'B<>!B<>C<> D<><1F>H<EFBFBD>Q<EFBFBD>Kr))<04>getattr<74>sys<79>stderr<72>stdout)<06>filer<65>r<>r<>r8r<>s @@@@r*<00>status_printerztqdm.status_printer<65>sr<00><><00><12><02><1A>2<EFBFBD>w<EFBFBD> <0C>5<><08> <0A>#<23>*<2A>*<2A>c<EFBFBD>j<EFBFBD>j<EFBFBD>)<29> )<29> 6<>G<EFBFBD>C<EFBFBD>J<EFBFBD>J<EFBFBD><07><1C> 6<> 8<> 6<>G<EFBFBD>C<EFBFBD>J<EFBFBD>J<EFBFBD><07><1C> 6<> 8<> <17><16>3<EFBFBD><08> <20>
<1C>r)c <00><><00>|r
||dzk\rd}|r|dvr|r||z}||z}|r||z}d}tj|<02>}|<08>
|r|| z
|z }|rd|z nd}tj}|r|r||<08>n|d<06>nd|zdz}|r|r||<10>n|d<06>ndd z|z}|r|dkDr|n|}|r||| <0B>
<EFBFBD>}|<01>
||| <0B>
<EFBFBD>nd}nt|<00>}|<01> t|<01>nd} |
rd |
znd }
|r
|r||z
|z nd }|rtj|<17>nd} |r#|r!t j <00>t|<17><0E>zn#t jd tj<00>}|r|dddk(}|r|n|dz}nd }d|<15>d|<16>d|<0F>d|<18>d |<14>|
<EFBFBD>d<15> }id|<00>d|<15>d|<01>d|<16>d|<0F>d|<02>d|<03>d|xsd <0C>d|<06>d|r|dkDr|n|<08>d |<14>d!|<08>d"|<12>d#|<10>d$|<13>d%|
<EFBFBD>d&| <0B>| |||||d'<27><06>|<0E>}|<01>r*||z }|d(z}||d)<29>d*<2A>z }|d k(r |dd+|ddzS|j|<1B>,<2C>| r'|j|<1F>-<2D>|s| jd.d <0C>} nd/} t<00>} | j d6d0| i|<1D><01>}!| j"s|!St%||rtd|t'|!<21>z
<00>nd1|d2urt$j(n|xst$j*| <0A>3<EFBFBD>} t-| j.<00>st-| <09>r t| <09>} | j d6d0| i|<1D><01>}"|r t1|"|<03>S|"S| r<>|d4z }|j|d <0A>5<EFBFBD>t<00>} | j d6d0| i|<1D><01>}!| j"s|!St%d |rtd|t'|!<21>z
<00>nd1t$j2| <0A>3<EFBFBD>} | j d6d0| i|<1D><01>}"|r t1|"|<03>S|"S|r|dznd <0C>|<15>|<06>d|<0F>d |<14>|
<EFBFBD>d<15> S#t$rY<00><02><>wxYw#t$rt
j}Y<00><02><>wxYw)7a<37>
Return a string-based progress bar given some parameters
Parameters
----------
n : int or float
Number of finished iterations.
total : int or float
The expected total number of iterations. If meaningless (None),
only basic progress statistics are displayed (no ETA).
elapsed : float
Number of seconds passed since start.
ncols : int, optional
The width of the entire output message. If specified,
dynamically resizes `{bar}` to stay within this bound
[default: None]. If `0`, will not print any bar (only stats).
The fallback is `{bar:10}`.
prefix : str, optional
Prefix message (included in total width) [default: ''].
Use as {desc} in bar_format string.
ascii : bool, optional or str, optional
If not set, use unicode (smooth blocks) to fill the meter
[default: False]. The fallback is to use ASCII characters
" 123456789#".
unit : str, optional
The iteration unit [default: 'it'].
unit_scale : bool or int or float, optional
If 1 or True, the number of iterations will be printed with an
appropriate SI metric prefix (k = 10^3, M = 10^6, etc.)
[default: False]. If any other non-zero number, will scale
`total` and `n`.
rate : float, optional
Manual override for iteration rate.
If [default: None], uses n/elapsed.
bar_format : str, optional
Specify a custom bar string formatting. May impact performance.
[default: '{l_bar}{bar}{r_bar}'], where
l_bar='{desc}: {percentage:3.0f}%|' and
r_bar='| {n_fmt}/{total_fmt} [{elapsed}<{remaining}, '
'{rate_fmt}{postfix}]'
Possible vars: l_bar, bar, r_bar, n, n_fmt, total, total_fmt,
percentage, elapsed, elapsed_s, ncols, nrows, desc, unit,
rate, rate_fmt, rate_noinv, rate_noinv_fmt,
rate_inv, rate_inv_fmt, postfix, unit_divisor,
remaining, remaining_s, eta.
Note that a trailing ": " is automatically removed after {desc}
if the latter is empty.
postfix : *, optional
Similar to `prefix`, but placed at the end
(e.g. for additional stats).
Note: postfix is usually a string (not a dict) for this method,
and will if possible be set to postfix = ', ' + postfix.
However other types are supported (#382).
unit_divisor : float, optional
[default: 1000], ignored unless `unit_scale` is True.
initial : int or float, optional
The initial counter value [default: 0].
colour : str, optional
Bar colour (e.g. 'green', '#00ff00').
Returns
-------
out : Formatted meter and stats, ready to display.
g<00>?N)Tr Fr z5.2f<EFBFBD>?z/szs/)r<>r<>rpr)<01>seconds<64><73><EFBFBD><EFBFBD><EFBFBD>r0z| <20>/z [<5B><r<>r<><00>n_fmt<6D>total<61> total_fmt<6D>elapsed<65> elapsed_s<5F>ncols<6C>descr<63><00>rate<74>rate_fmt<6D>
rate_noinv<EFBFBD>rate_noinv_fmt<6D>rate_inv<6E> rate_inv_fmt<6D>postfix<69> unit_divisor)r<><00> remaining<6E> remaining_s<5F>l_bar<61>r_bar<61>eta<74>dr<>z%|r[)r )<01>
percentagez{desc}: z{l_bar}{bar}{r_bar}<7D>barryT)rr<><00>|)r rr()rr<>r<>r2<00> TypeErrorr<00>nowr<00> fromtimestampr<00>utc<74> OverflowErrorr{<00>updater<65>r<00>format<61> format_calledrnrr<>r<>rrrr<>)#r<>r<>r<>r<><00>prefix<69>asciir<69><00>
unit_scaler<00>
bar_formatrr<00>initialr<6C><00> extra_kwargs<67> elapsed_str<74>inv_rater<65>rrrr<>r<>r <00> remaining_str<74>eta_dt<64>bool_prefix_colon_alreadyr r <00> format_dictr}r<00>full_bar<61>nobarr<72>s# r*<00> format_meterztqdm.format_meter<65>sD<00><00>L <11>Q<EFBFBD>5<EFBFBD>3<EFBFBD>;<3B>'<27><18>E<EFBFBD> <16>*<2A>I<EFBFBD>5<><14><15><1A>#<23><05> <0A><1A>O<EFBFBD>A<EFBFBD><13><14>
<EFBFBD>"<22><04><1E>J<EFBFBD><1A>*<2A>*<2A>7<EFBFBD>3<> <0B> <10><<3C>G<EFBFBD><15><07>K<EFBFBD>7<EFBFBD>*<2A>D<EFBFBD>#<23>1<EFBFBD>t<EFBFBD>8<EFBFBD><14><08><1C>*<2A>*<2A> <0A>!<21>3=<3D>=<3D><14>.<2E>T<EFBFBD>$<24>K<EFBFBD>'*<2A>d<EFBFBD>3<>59<35>:<3A><0E><18>)3<>]<5D>8<EFBFBD> $<24>8<EFBFBD>D<EFBFBD>/<2F> <20>D<EFBFBD>)<29>+/<2F>0<> <0C>$,<2C><08>1<EFBFBD> <0C><<3C>.<2E><08> <15>!<21>!<21>\<5C>:<3A>E<EFBFBD>FK<46>FW<46> <0A>e<EFBFBD>\<5C>B<>]`<60>I<EFBFBD><17><01>F<EFBFBD>E<EFBFBD>&+<2B>&7<><03>E<EFBFBD>
<EFBFBD>S<EFBFBD>I<EFBFBD> <11>(/<2F>d<EFBFBD>W<EFBFBD>n<EFBFBD>R<EFBFBD>G<EFBFBD>+/<2F>5<EFBFBD>U<EFBFBD>Q<EFBFBD>Y<EFBFBD>$<24>&<26>a<EFBFBD> <09>;?<3F><04>,<2C>,<2C>Y<EFBFBD>7<>S<EFBFBD> <0A> "<22><1D>%<25><1F>l<EFBFBD>l<EFBFBD>n<EFBFBD>y<EFBFBD><19>'C<>C<>-5<>-C<>-C<>A<EFBFBD>x<EFBFBD>|<7C>|<7C>-T<> <13> <12>)/<2F><02><03><1B><04>)<<3C> %<25>7<>F<EFBFBD>V<EFBFBD>d<EFBFBD>]<5D>E<EFBFBD><16>E<EFBFBD><14>U<EFBFBD>G<EFBFBD>1<EFBFBD>Y<EFBFBD>K<EFBFBD>r<EFBFBD>+<2B><1D>a<EFBFBD> <0A><EFBFBD>b<EFBFBD><18>
<EFBFBD>SZ<EFBFBD>R[<5B>[\<5C>]<5D><05><1C> <0F><11><1C><1B>U<EFBFBD><1C>$+<2B>U<EFBFBD><1C>4?<3F><19><1C> <16>{<7B><1C>%0<><17><1C> <14>U<EFBFBD> <1C>#<23>F<EFBFBD>L<EFBFBD>b<EFBFBD> <1C>39<33>$<24> <1C>
<13><08>X<EFBFBD><01>\<5C>H<EFBFBD>t<EFBFBD> <1C> <17><08> <1C> #/<2F><04> <1C> <1D>n<EFBFBD><1C>/9<>(<28><1C> <1B>L<EFBFBD><1C> <16>w<EFBFBD><1C>!/<2F> <0C><1C><1D>&<26>y<EFBFBD><1A>U<EFBFBD>6<EFBFBD><1C><1B><1C> <0B>" <11><14>u<EFBFBD>9<EFBFBD>D<EFBFBD><1D><03><1A>J<EFBFBD> <11>
<EFBFBD>4<EFBFBD>(<28><02>+<2B> +<2B>E<EFBFBD><14><01>z<EFBFBD><1C>S<EFBFBD>b<EFBFBD>z<EFBFBD>E<EFBFBD>!<21>"<22>I<EFBFBD>-<2D>-<2D> <17> <1E> <1E>U<EFBFBD> <1E> +<2B><19><1B>"<22>"<22>j<EFBFBD>"<22>9<><1E>!+<2B>!3<>!3<>J<EFBFBD><02>!C<>J<EFBFBD>2<>
<EFBFBD>$<24><EFBFBD>H<EFBFBD>%<25>J<EFBFBD>%<25>%<25>B<>(<28>B<>k<EFBFBD>B<>E<EFBFBD><1B>)<29>)<29><1C> <0C><1B>4<EFBFBD>>C<>3<EFBFBD>q<EFBFBD>%<25>(<28>5<EFBFBD>/<2F>"9<>:<3A><12>05<30><14> <0A>3<EFBFBD>9<EFBFBD>9<EFBFBD>5<EFBFBD>CS<43>C<EFBFBD>G<EFBFBD>G<EFBFBD>"(<28>*<2A>H<EFBFBD><1D>X<EFBFBD>-<2D>-<2D>.<2E>9<EFBFBD>Z<EFBFBD>3H<33> <20><1A>_<EFBFBD>
<EFBFBD>#<23>*<2A>#<23>#<23>@<40><08>@<40>K<EFBFBD>@<40>C<EFBFBD>,1<>9<EFBFBD>S<EFBFBD>%<25>(<28> :<3A>s<EFBFBD> :<3A> <17> <11>S<EFBFBD>L<EFBFBD>E<EFBFBD> <17> <1E> <1E>U<EFBFBD>q<EFBFBD> <1E> 9<>$<24><EFBFBD>H<EFBFBD>%<25>J<EFBFBD>%<25>%<25>B<>(<28>B<>k<EFBFBD>B<>E<EFBFBD><1B>)<29>)<29><1C> <0C><1A>1<EFBFBD>>C<>3<EFBFBD>q<EFBFBD>%<25>(<28>5<EFBFBD>/<2F>"9<>:<3A><12>#&<26>9<EFBFBD>9<EFBFBD>V<EFBFBD>=<3D>H<EFBFBD>$<24>*<2A>#<23>#<23>@<40><08>@<40>K<EFBFBD>@<40>C<EFBFBD>,1<>9<EFBFBD>S<EFBFBD>%<25>(<28> :<3A>s<EFBFBD> :<3A>+1<><06><14> <0A>b<EFBFBD>9<><1C>g<EFBFBD>d<EFBFBD>V<EFBFBD>2<EFBFBD>k<EFBFBD>]<5D>"<22>X<EFBFBD>J<EFBFBD>w<EFBFBD>i<EFBFBD>q<EFBFBD>J<01> K<01><>u<19> <11> <10> <11><><1D> "<22><1D>\<5C>\<5C>F<EFBFBD> "<22>s%<00> N*<00>A N:<00>* N7<03>6N7<03>:O<03>Oc<00><><00>tj|<00>}|j<00>5|jj |<03>|j
rB|j <00>|j j<00>s t||j
<00>|_ddd<00>|S#t$r/}tdt|<04>ztd<02><03>d|_Yd}~<04>=d}~wwxYw#1swY|SxYw)Nz>tqdm:disabling monitor support (monitor_interval = 0) due to:
rgrhr) <0A>object<63>__new__<5F>get_lock<63>
_instances<EFBFBD>add<64>monitor_interval<61>monitor<6F>reportr<00> Exceptionr r2r")rS<00>_<>__<5F>instance<63>es r*r+z tqdm.__new__<5F>s<><00><00><19>><3E>><3E>#<23>&<26><08> <10>\<5C>\<5C>^<5E> -<2D> <0F>N<EFBFBD>N<EFBFBD> <1E> <1E>x<EFBFBD> (<28><12>#<23>#<23><13><1B><1B>)<<3C>03<30> <0B> <0B>0B<30>0B<30>0D<30>-<2D>"*<2A>3<EFBFBD><03>0D<30>0D<30>"E<>C<EFBFBD>K<EFBFBD> -<2D><18><0F><> !<21>-<2D><18>=<3D>?B<>1<EFBFBD>v<EFBFBD>F<01>+<2B><01>;<3B>,-<2D>C<EFBFBD>(<28>(<28><> -<2D><> -<2D><18><0F>s0<00>AC<03>5B<02> C<05>#%C <05>C<03> C<05>C<03>Cc <00><><00>|jD<00>chc]'}||ur!t|d<01>rt|j<00><00><02>)}}t t t t|<03>dz<00><00>j|<03><00>Scc}w)zSkips specified instance.<2E>posr ) r-rdr<>r8r|<00>setr<74>r<><00>
difference)rSr5<00>inst<73> positionss r*<00> _get_free_posztqdm._get_free_pos<6F>so<00><00>03<30>~<7E>~<7E>G<01>t<EFBFBD><1C>H<EFBFBD>,<2C><17><14>u<EFBFBD>1E<31><19><14><18><18>]<5D>G<01> <09>G<01><12>3<EFBFBD>u<EFBFBD>S<EFBFBD><19>^<5E>a<EFBFBD>/<2F>0<>1<><<3C><<3C>Y<EFBFBD>G<>H<>H<><48>Gs<00>,A5c<00><><00><04>|j5 |jj|<01>|jsq|j
xsddz
<00>t t<00>fd<03>|j<00><00>}|r:t|d<04><00><05>}|jd<06><07>t|j<00>|_ ddd<08>y#t$rY<00><>wxYw#1swYyxYw) a5
Remove from list and reposition another unfixed bar
to fill the new gap.
This means that by default (where all nested bars are unfixed),
order is not maintained but screen flicker/blank space is minimised.
(tqdm<=4.44.1 moved ALL subsequent unfixed bars up.)
<20>r c<00>><00><01>t|d<01>xr<00>|jkS)Nr8)rdr8)r<>r<>s <20>r*r<>z&tqdm._decr_instances.<locals>.<lambda><3E>s<00><><00>g<EFBFBD>a<EFBFBD><15>/<2F>A<>D<EFBFBD>A<EFBFBD>E<EFBFBD>E<EFBFBD>M<EFBFBD>r)c<00><00>|jSr9<00>r8)r<>s r*r<>z&tqdm._decr_instances.<locals>.<lambda><3E>s
<00><00><01><05><05>r))<01>keyT<79><01>nolockN) <0C>_lockr-<00>remover<65><00>gui<75>nrows<77>list<73>filterr|<00>clearr<72>r8)rSr5<00> instancesr;r<>s @r*<00>_decr_instancesztqdm._decr_instances<65>s<><00><><00><11>Y<EFBFBD>Y<EFBFBD> 1<> <15><13><0E><0E>%<25>%<25>h<EFBFBD>/<2F> <1C><<3C><<3C> <20><0E><0E>,<2C>"<22><01>1<><04> <20><16>A<><17>N<EFBFBD>N<EFBFBD>"$<24>%<25> <09><1D><1E>y<EFBFBD>o<EFBFBD>><3E>D<EFBFBD><18>J<EFBFBD>J<EFBFBD>d<EFBFBD>J<EFBFBD>+<2B>"<22>8<EFBFBD><<3C><<3C>0<>D<EFBFBD>H<EFBFBD>% 1<> 1<><31><1C> <15><15> <15><> 1<> 1<>s.<00>C<03>B1<02>A=C<03>1 B=<05>:C<03><B=<05>=C<03>C c<00><><00>|<02>|ntj}|j||<04><02>5|j|<01>|j|<03>ddd<01>y#1swYyxYw)z5Print a message via tqdm (without overlap with bars).N)r<>rE)r<>r<><00>external_write_moder<65>)rSr<>r<><00>endrEr<>s r*r<>z
tqdm.write<74>sR<00><00><1A>%<25>T<EFBFBD>3<EFBFBD>:<3A>:<3A><02> <10> $<24> $<24>$<24>v<EFBFBD> $<24> ><3E> <1A> <0E>H<EFBFBD>H<EFBFBD>Q<EFBFBD>K<EFBFBD> <0E>H<EFBFBD>H<EFBFBD>S<EFBFBD>M<EFBFBD> <1A> <1A> <1A>s <00>#A<03>Ac#<00>K<00>|<01>|ntj} |s|j<00>j<00>g}t |dg<00>D]`}t |d<03>s<01>|j |k(std<04>||j fD<00><00>s<01>>|jd<05><06>|j|<05><00>bd<01><02>|D]}|jd<05><06><00> |s|jj<00>yy#|s|jj<00>wwxYw<01>w)z<>
Disable tqdm within context and refresh tqdm when exits.
Useful when writing to standard output stream
Nr-<00>start_tc3<00>`K<00>|]&}|tjtjfv<00><01><00>(y<00>wr9)r<>r<>r<>)r<>r<>s r*r<>z+tqdm.external_write_mode.<locals>.<genexpr><3E>s+<00><00><><00>FN<01>:;<3B><01>c<EFBFBD>j<EFBFBD>j<EFBFBD>#<23>*<2A>*<2A>5<>5<>FN<01>s<00>,.TrD) r<>r<>r,rNr<>rdr<><00>allrL<00>append<6E>refreshrFrR)rSr<>rEr<><00> inst_clearedr;s r*rPztqdm.external_write_mode<64>s<><00><00><><00><1A>%<25>T<EFBFBD>3<EFBFBD>:<3A>:<3A><02> $<24><19><13> <0C> <0C><0E>&<26>&<26>(<28><1D>L<EFBFBD><1F><03>\<5C>2<EFBFBD>6<> .<2E><04><1B>4<EFBFBD><19>+<2B><14><17><17>B<EFBFBD><1D>#<23>FN<01>@B<>D<EFBFBD>G<EFBFBD>G<EFBFBD>}<7D>FN<01>CN<01><18>J<EFBFBD>J<EFBFBD>d<EFBFBD>J<EFBFBD>+<2B> <20>'<27>'<27><04>-<2D> .<2E> <12>$<24> *<2A><04><14> <0C> <0C>D<EFBFBD> <0C>)<29> *<2A><1A><13> <09> <09>!<21>!<21>#<23><1A><>6<EFBFBD><13> <09> <09>!<21>!<21>#<23><1A>s)<00>D<01>>C&<00>-C&<00>AC&<00>D<01>&D<03>Dc<00><00>||_y)zSet the global lock.N)rF)rSrYs r*<00>set_lockz tqdm.set_lock<63>s <00><00><19><03> r)c<00>P<00>t|d<01>st<00>|_|jS)z7Get the global lock. Construct it if it does not exist.rF)rdrJrFrjs r*r,z tqdm.get_lock<63>s"<00><00><17>s<EFBFBD>G<EFBFBD>$<24>,<2C>.<2E>C<EFBFBD>I<EFBFBD><12>y<EFBFBD>y<EFBFBD>r)c <00><><00><00><01> <0A><0E><0F>ddlm}m}ddlm}ddlm<06>  |<02>5|dt<00><06>ddlm }ddd<08>d \}} dd
l m <0C> dd lm}ddlm}  ddlm}
 ddlm} <00>j1<00><00><01>j3dd<08>g<01>d<18> <0A><0E><00><0F>fd<13> } | <0C><00> _| <0C>|_| d<14><00> _| d<14>|_| <0C>|_| <0C>| _| d<15>|_| d<14>|_| d<14>| _<05> | <0C>|_| <0B> | <0C>| _| <0C>|
_| d<16>|
_| d<17>|
_|<06>|<07>| <0C>|_| <0C>|_y<08><0E> | <0C><00>_yy#1swY<00><01>>xYw#t$rd}Y<00><01>OwxYw#t$r> dd
l m <0C>n2#t$r& dd lm}dd l m}||f<02>n#t$rd<08>YnwxYwYnwxYwY<00><01><>wxYw#t$r% ddlm} m}n#t$r ddlm} m}YnwxYwY<00><01><>wxYw#t$r
ddlm}
Y<00><01><>wxYw#t$r ddlm} n#t$rd} YnwxYwY<00><01><>wxYw)ae
Registers the current `tqdm` class with
pandas.core.
( frame.DataFrame
| series.Series
| groupby.(generic.)DataFrameGroupBy
| groupby.(generic.)SeriesGroupBy
).progress_apply
A new instance will be created every time `progress_apply` is called,
and each instance will automatically `close()` upon completion.
Parameters
----------
tqdm_kwargs : arguments for the tqdm instance
Examples
--------
>>> import pandas as pd
>>> import numpy as np
>>> from tqdm import tqdm
>>> from tqdm.gui import tqdm as tqdm_gui
>>>
>>> df = pd.DataFrame(np.random.randint(0, 100, (100000, 6)))
>>> tqdm.pandas(ncols=50) # can use tqdm_gui, optional kwargs, etc
>>> # Now you can use `progress_apply` instead of `apply`
>>> df.groupby(0).progress_apply(lambda x: x**2)
References
----------
<https://stackoverflow.com/questions/18603270/ progress-indicator-during-pandas-operations-python>
r)<02>catch_warnings<67> simplefilter)<01> DataFrame)<01>Series<65>ignore)<01>category)<01>PanelN<6C>NN)<01>_Rolling_and_Expanding)<01> Expanding)<01>Rolling)<01> SeriesGroupBy)<01>DataFrameGroupBy)rirh)<01>GroupBy)<01> PanelGroupBy<42> deprecated_tc<00><00><05><00><00><02><03><04><05><00>fd<01>}|S)Nc<00><><00><06><01><08><00>jdt|dd<03><00>}|<04>u<EFBFBD> dk(r |j}nct|<00> <09>r t |<00>}nK<6E>
<EFBFBD> t|<00>
<EFBFBD>s=|j dd<06>}|dk(rd}n|dk(rd }|j|j |z}<04> d<00> <0B> d<00>d<03> d<n
<00> dd|i<01><0E><01><01>t |<02>dkDr:td
t<00>jd tjj<00><00> <0C> dd l m } |<06><01><00><01><01>fd<10>} t|<00> <0A>|fi|<03><01><01>j!<00>S#t$rt|dd<0F><00>}Y<00>LwxYw#t$rY<00>RwxYw#<00>j!<00>wxYw)aT
Parameters
----------
df : (DataFrame|Series)[GroupBy]
Data (may be grouped).
func : function
To be applied on the (grouped) data.
**kwargs : optional
Transmitted to `df.apply()`.
r<><00>ngroupsN<73>applymap<61>axisr<00>index<65>columnsr z<>Except func, normal arguments are intentionally not supported by `(DataFrame|Series|GroupBy).progress_apply`. Use keyword arguments instead.r<><00>r8)<01>is_builtin_func<6E>_is_builtin_funcc<00><00>|Sr9r()r<>s r*r<>zEtqdm.pandas.<locals>.inner_generator.<locals>.inner.<locals>.<lambda><3E>s<00><00>PQ<50>r)c<00><><00><02><00>j<00>jr<19>j<00>jkrdnd<02><03><00>|i|<01><01>S)Nr r)r<>)rr<>r<>)rFrG<00>funcr<63>s <20><>r*<00>wrapperzDtqdm.pandas.<locals>.inner_generator.<locals>.inner.<locals>.wrapper<65>s9<00><><00>
<16>H<EFBFBD>H<EFBFBD><01><07><07>1<EFBFBD>3<EFBFBD>3<EFBFBD><11><17><17>=<3D>q<EFBFBD>a<EFBFBD>H<EFBFBD>H<><1F><14>0<><16>0<>0r)r()<11>popr<70><00>size<7A>
isinstancer<EFBFBD><00>get<65>shaper!r<>r<>r<>r<><00>pandas.core.commonrurDr<00>close)<0F>dfryrFrGr<>rqrurzr<>r`rerSrl<00> df_function<6F> tqdm_kwargss ` @<40><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>r*<00>innerz3tqdm.pandas.<locals>.inner_generator.<locals>.innerRs~<00><><00>$<24><0F><0F><07><17><12>Y<EFBFBD><04>1M<31>N<><05><18>=<3D>"<22>j<EFBFBD>0<> "<22><07><07><05>#<23>B<EFBFBD><06>/<2F> #<23>B<EFBFBD><07><05>0<>8<>(<28><12>-C<>D<>%<25>z<EFBFBD>z<EFBFBD>&<26>!<21>4<><04><1F>7<EFBFBD>?<3F>#$<24>D<EFBFBD>!<21>Y<EFBFBD>.<2E>#$<24>D<EFBFBD> "<22><07><07>2<EFBFBD>8<EFBFBD>8<EFBFBD>D<EFBFBD>><3E> 9<><05> <20><01>?<3F>.<2E>$<24>Q<EFBFBD><0F>A<EFBFBD>&*<2A>L<EFBFBD><11>O<EFBFBD><1B>7<>%<25>7<>;<3B>7<>A<EFBFBD><16>t<EFBFBD>9<EFBFBD>q<EFBFBD>=<3D>*<2A>:<3A>")<29><11><14><14>w<EFBFBD><03>
<EFBFBD>
<EFBFBD>8H<EFBFBD>8H<EFBFBD>!I<> K<01>S<01>B<><19>*<2A>4<EFBFBD>0<>D<EFBFBD>
1<><1E>3<>7<EFBFBD>2<EFBFBD>{<7B>3<>G<EFBFBD>F<>v<EFBFBD>F<><15>G<EFBFBD>G<EFBFBD>I<EFBFBD><49>+#<23>S<01>&-<2D>b<EFBFBD>2D<32>k<EFBFBD>&R<>O<EFBFBD>S<01><>!<21><19><18><19><>"<16>G<EFBFBD>G<EFBFBD>I<EFBFBD>s0<00>;D4<00>E<00>E <00>4E<03> E<03> E<03>E<03> E2r()r<>r<>r`rerSrlr<>s` <20><><EFBFBD><EFBFBD><EFBFBD>r*<00>inner_generatorz$tqdm.pandas.<locals>.inner_generatorQs<00><><00>E <1E>E <1E>N<19>Lr)r<>rp<00> aggregate<74> transform)<01>apply)<1F>warningsr]r^<00>pandas.core.framer_<00>pandas.core.seriesr`<00> FutureWarning<6E>pandasrcrD<00>pandas.core.window.rollingre<00>pandas.core.window<6F>pandas.core.window.expandingrfrg<00>pandas.core.groupby.genericrhri<00>pandas.core.groupby.groupby<62>pandas.core.groupbyrjrk<00>copyr{<00>progress_apply<6C> progress_map<61>progress_applymap<61>progress_aggregate<74>progress_transform)rSr<>r]r^r_rcrgrfrhrirjrkr<>r`rerls`` @@@r*r<>z tqdm.pandas<61>sk<00><><00>F :<3A>/<2F>-<2D> <19><1F>!<21> )<29><1C>X<EFBFBD> <0A>><3E>(<28> )<29>
(<28><1A><07><19> 2<> I<> P<01> A<> D<>  4<> ;<3B> $<24> @<40>"<22>&<26>&<26>(<28> <0B>#<23><0F><0F><0E><04>=<3D>><3E> <0C>H <19>H <19>X!0<> 1<><06><1D>'6<>'8<> <0A>$<24>-<2D>e<EFBFBD>4<><06><1B>%4<>U<EFBFBD>%;<3B> <0A>"<22>#2<>#4<> <09> <20>*9<>*;<3B><18>'<27>&5<>j<EFBFBD>&A<> <09>#<23>!0<><15>!7<> <09><1E>(7<><05>(><3E><18>%<25> <10> <1C>#2<>#4<>E<EFBFBD> <20> <17> #<23>*9<>*;<3B>L<EFBFBD> '<27>!0<>!2<><07><1E>%4<>[<5B>%A<><07>"<22>%4<>[<5B>%A<><07>"<22> <12> <1E>9<EFBFBD>#8<>%4<>%6<>G<EFBFBD> "<22>'6<>'8<>I<EFBFBD> $<24> #<23> /<2F>4C<34>4E<34> "<22> 1<>0<>[ )<29> )<29><><1B> <19><18>E<EFBFBD> <19><>
<1B> 2<> 2<>E<><45><1E> 2<>2<>F<>B<>-4<>i<EFBFBD>-?<3F>*<2A><>"<22>2<>-1<>*<2A>2<><32>  2<><32> 2<><32><1B> P<01> P<01>W<>W<><57><1E> P<01>O<>O<> P<01><> P<01><><1B> 4<> 3<> 3<> 4<><34>
<1B> $<24> $<24><<3C><><1E> $<24>#<23> <0C> $<24><> $<24>s<EFBFBD><00>F<00>E3<03>F<00>F<00> G<00>H <00> H#<00>3E=<07>8F<00> F<03>F<03> G<03>F#<02>"G<03># G<05>-F><04>=G<05>> G <07> G<05> G <07> G<05>G<03>G<05>G<03>G<03> H
<03>&G/<02>.H
<03>/H<05>H
<03>H<05>H
<03> H
<03> H <03>H <03># I <03>-H4<02>3I <03>4 I<05>?I <03>I<05>I <03>I <03>TQDM_T)r<>r<><00>miniters<72>positionrI)<02> is_method<6F>typesc <00>J<00>|<05>tj}|rt|t|dd<01>xsd<03><04>}t ||<00><05>}| <0B>t |d<06>r|j <00>sd} |<03>|<01> t|<01>}|td<08>k(rd}| rj||_ | |_ |j5|j|<00>|_|j j#|<00>ddd<01>||_||_||_y|r<>d|_ |j5|j|<00>|_|j j#|<00>ddd<01>d |vr0t+d
t|d tjj,<00><00> <0C><00>t/d t1|<1B>z<00><00>|<06>|<17>"|tjtj2fvs|r9|rt5<00>}|r+||<05>\}}nt5<00>}|r||<05>\}}|<06>|}|<17>|}| <09>d} d}nd}|<07>d}|<08>d}|
<EFBFBD> t7|<05> }
|r|
durt9|
<EFBFBD>s t1|<10>}|<0F>d}||_ |xsd|_||_||_||_||_||_ ||_!||_"| |_#||_$|
|_%| |_ | |_&| |_'||_(||_)||_*||_+||_,||_-||_.t_|<0F>|_0t_|<0F>|_1t_|<0F>|_2||_3d|_4||_5tl|_7|r |jpdddi|<13><01>||_9||_|j5|<12>|j|<00>n| |_ddd<01>|sA|ju|j<<00>|_;|dkr|jy|jT<00><12>|jo<00>|_=|jz|_>y#ttf$rd}Y<00><03>wwxYw#1swY<00><03>xYw#1swY<00><02><>xYw#t$r
||_4Y<00><>wxYw#1swY<00><>xYw)zsee tqdm.tqdm for argumentsN<73>encodingzutf-8)r<>)<01> tqdm_instance<63>isattyT<79>inf<6E>nestedzQ`nested` is deprecated and automated.
Use `position` instead for manual control.
r<EFBFBD>rtzUnknown argument(s): rFrprW<00><01> lock_argsr()?r<>r<>rr<>rrdr<>r<>rr<><00>float<61>iterable<6C>disablerFr=r8r-rGr<>r<><00>leaver!r<>rr2r<>rrrrr<>r<>rI<00> mininterval<61> maxintervalr<6C><00>dynamic_minitersrr<>rrrr<><00>delayrH<00> dynamic_ncolsr<73>r<><00>_ema_dn<64>_ema_dt<64> _ema_minitersrrr<>r
<00>_time<6D> set_postfix<69> last_print_nr<6E><00>sprW<00> last_print_trS) r6r<>rr<>r<>r<>r<>r<>r<>r<>rr<>r<>rr<>r<>rrr<>rr<00> write_bytesr<73>rIr<>r<>rHrG<00>_dynamic_ncols<6C>_ncols<6C>_nrowsr<73>s r*r5z tqdm.__init__<5F>s4<00><00> <10><<3C><16>:<3A>:<3A>D<EFBFBD> <16>'<27><14>w<EFBFBD>t<EFBFBD>Z<EFBFBD><14>><3E>I<>'<27>K<01>D<EFBFBD>#<23>4<EFBFBD>t<EFBFBD><<3C><04> <12>?<3F>w<EFBFBD>t<EFBFBD>X<EFBFBD>6<>t<EFBFBD>{<7B>{<7B>}<7D><1A>G<EFBFBD> <10>=<3D>X<EFBFBD>1<> <1D><1B>H<EFBFBD> <0A><05> <11>E<EFBFBD>%<25>L<EFBFBD> <20><18>E<EFBFBD> <12>$<24>D<EFBFBD>M<EFBFBD>"<22>D<EFBFBD>L<EFBFBD><15><1A><1A> -<2D><1F>-<2D>-<2D>d<EFBFBD>3<><04><08><14><0F><0F>&<26>&<26>t<EFBFBD>,<2C> -<2D><1D>D<EFBFBD>F<EFBFBD><1E>D<EFBFBD>J<EFBFBD><1E>D<EFBFBD>J<EFBFBD> <12> <11><1F>D<EFBFBD>L<EFBFBD><15><1A><1A> -<2D><1F>-<2D>-<2D>d<EFBFBD>3<><04><08><14><0F><0F>&<26>&<26>t<EFBFBD>,<2C> -<2D><1C>v<EFBFBD>%<25> '<27>C<01>$<24>T<EFBFBD>7<EFBFBD>C<EFBFBD>J<EFBFBD>J<EFBFBD>4D<34>4D<34>E<>G<01> E<01> <1D>4<>s<EFBFBD>6<EFBFBD>{<7B>B<>C<>  E<01><13>]<5D>e<EFBFBD>m<EFBFBD>$<24>3<EFBFBD>:<3A>:<3A>s<EFBFBD>z<EFBFBD>z<EFBFBD>:R<>2R<32> <1A><1C> 5<> 7<> <0A> <20>#0<><14>#6<>L<EFBFBD>E<EFBFBD>5<EFBFBD>!6<>!8<><0E>!<21>%3<>D<EFBFBD>%9<>N<EFBFBD>F<EFBFBD>F<EFBFBD><1C>}<7D> &<26><05><1C>}<7D> &<26><05> <13> <1B><18>H<EFBFBD>#<23> <1C>$<24> <1C> <16> <1E><1B>K<EFBFBD> <16> <1E><1B>K<EFBFBD> <10>=<3D>)<29>$<24>/<2F>/<2F>E<EFBFBD> <15>%<25>t<EFBFBD>+<2B>I<EFBFBD>e<EFBFBD>4D<34><1C>Z<EFBFBD><1F>J<EFBFBD> <14> <1C><19>I<EFBFBD>!<21><04> <0A><18>J<EFBFBD>B<EFBFBD><04> <09><1A><04>
<EFBFBD><1A><04>
<EFBFBD><16><04><07><1A><04>
<EFBFBD><1A><04>
<EFBFBD>&<26><04><18>&<26><04><18> <20><04> <0A> 0<><04><1D><1A><04>
<EFBFBD><1E><04> <0C><18><04> <09>$<24><04><0F>(<28><04><19><1E><04> <0C>"<22><04><0E><1A><04>
<EFBFBD><16><04><08>*<2A><04><1A>"<22><04><0E><1A>9<EFBFBD>~<7E><04> <0C><1A>9<EFBFBD>~<7E><04> <0C> <20><19>^<5E><04><1A>$<24><04><0F><1B><04> <0C><1C><04> <0B><19><04>
<EFBFBD> <12> '<27> <20><04> <20> <20>:<3A><15>:<3A>'<27>:<3A>
$<24><04><19><18><04><06><12>Z<EFBFBD>Z<EFBFBD> S<01>3;<3B>3C<33>t<EFBFBD>)<29>)<29>$<24>/<2F>(<28><19>D<EFBFBD>H<EFBFBD> S<01><13><1A>)<29>)<29>$<24>'<27>'<27>2<>D<EFBFBD>G<EFBFBD><14><01>z<EFBFBD><14> <0C> <0C>t<EFBFBD>~<7E>~<7E> <0C>6<>!<21>J<EFBFBD>J<EFBFBD>L<EFBFBD><04><19><1B>(<28>(<28><04> <0C><>y<1E>~<7E>.<2E> <1D><1C><05> <1D><> -<2D> -<2D><> -<2D> -<2D><>f<1D> '<27>&<26><04> <0C> '<27><> S<01> S<01>sH<00># O<00>2O)<03>?2O6<03>P<00>P<03>O&<03>%O&<03>)O3<07>6P<07>P<03>P<03>P"c<00><><00>|j<00>|jdkDS|j<00> td<02><00>t|j<00>S)Nrz/bool() undefined when iterable == total == None)r<>r<>r<00>boolr]s r*<00>__bool__z tqdm.__bool__Qs?<00><00> <0F>:<3A>:<3A> !<21><17>:<3A>:<3A><01>><3E> !<21> <0F>=<3D>=<3D> <20><1B>M<>N<> N<><13>D<EFBFBD>M<EFBFBD>M<EFBFBD>"<22>"r)c<00>`<00>|j<00> |jSt|jd<01>r|jjdSt|jd<03>rt |j<00>St|jd<04>r|jj <00>St |dd<00>S)Nrr<00>__len__<5F>__length_hint__r<5F>)r<>r<>rdrr<>r<>r<>r]s r*r<>z tqdm.__len__Xs<><00><00><1E>-<2D>-<2D>/<2F>D<EFBFBD>J<EFBFBD>J<EFBFBD> /<2F>+2<>4<EFBFBD>=<3D>=<3D>'<27>+J<><14><1D><1D>$<24>$<24>Q<EFBFBD>'<27> /<2F>(/<2F>t<EFBFBD>}<7D>}<7D>i<EFBFBD>'H<><13>T<EFBFBD>]<5D>]<5D>#<23> /<2F>5<<3C>D<EFBFBD>M<EFBFBD>M<EFBFBD>K\<5C>4]<5D><14><1D><1D>.<2E>.<2E>0<>  /<2F>
<19><14>w<EFBFBD><04>-<2D>  /r)c<00><><00> |j}t|j<00>|_|j<00>||_S#t$r t d<01><00>wxYw#|_wxYw)Nz'tqdm' object is not reversible)r<><00>reversed<65>__iter__r<5F>r)r6<00>origs r*<00> __reversed__ztqdm.__reversed__`sY<00><00> !<21><17>=<3D>=<3D>D<EFBFBD>%<25>T<EFBFBD>]<5D>]<5D>3<>D<EFBFBD>M<EFBFBD><17>=<3D>=<3D>?<3F> <20>D<EFBFBD>M<EFBFBD><4D> <1E> ?<3F><1B>=<3D>><3E> ><3E> ?<3F><> !<21>D<EFBFBD>M<EFBFBD>s<00> ?<00>)A<00>A<03>A<00> A c<00>h<00>t|jdd<00>}|<02>||<01>S||j<00>vS)N<> __contains__)r<>r<>r<>)r6<00>item<65>containss r*r<>ztqdm.__contains__ks3<00><00><1A>4<EFBFBD>=<3D>=<3D>.<2E>$<24>?<3F><08>!)<29>!5<>x<EFBFBD><04>~<7E>R<>4<EFBFBD>4<EFBFBD>=<3D>=<3D>?<3F>;R<>Rr)c<00><00>|Sr9r(r]s r*r^ztqdm.__enter__os<00><00><13> r)c<00>z<00> |j<00>y#t$r|||fdk(r<01>tdtd<03><04>YywxYw)N)NNNzAttributeError ignoredrgrh)r<>r<>r r)r6<00>exc_type<70> exc_value<75> tracebacks r*rbz tqdm.__exit__rsB<00><00> F<01> <10>J<EFBFBD>J<EFBFBD>L<EFBFBD><4C><1D> F<01><18>)<29>Y<EFBFBD>/<2F>3E<33>E<><15> <10>)<29>;<3B>1<EFBFBD> E<>  F<01>s <00><00>$:<03>:c<00>$<00>|j<00>yr9)r<>r]s r*<00>__del__z tqdm.__del__{s <00><00> <0C>
<EFBFBD>
<EFBFBD> r)c<00>:<00>|jdi|j<00><01>S)Nr()r(r%r]s r*<00>__str__z tqdm.__str__~s<00><00> <20>t<EFBFBD> <20> <20>4<>4<EFBFBD>#3<>#3<>4<>4r)c<00>.<00>tt|dd<02><00>S)Nr8l)r<>r<>r]s r*<00> _comparableztqdm._comparable<6C>s<00><00><12>7<EFBFBD>4<EFBFBD><15><07>0<>1<>1r)c<00><00>t|<00>Sr9)<01>idr]s r*<00>__hash__z tqdm.__hash__<5F>s <00><00><11>$<24>x<EFBFBD>r)c#<00>6K<00>|j}|jr |D]}|<02><01><00>y|j}|j}|j}|j
|j z}|j}|j} |D]b}|<02><02>|dz }||z
|jk\s<01>|<08>} | |z
}
|
|k\s<01>1| |k\s<01>7|j||z
<00>|j}|j}<04>d ||_|j<00>y#||_|j<00>wxYw<01>w)z6Backward-compatibility to use: for x in tqdm(iterable)Nr ) r<>r<>r<>r<>r<>rSr<>r<>r<>r<>rr<>) r6r<><00>objr<6A>r<>r<><00> min_start_tr<74>r
<00>cur_t<5F>dts r*r<>z tqdm.__iter__<5F>s<00><00><><00><18>=<3D>=<3D><08> <10><<3C><<3C><1F> <1A><03><19> <09> <1A> <12><1A>&<26>&<26> <0B><1B>(<28>(<28> <0C><1B>(<28>(<28> <0C><1A>l<EFBFBD>l<EFBFBD>T<EFBFBD>Z<EFBFBD>Z<EFBFBD>/<2F> <0B> <10>F<EFBFBD>F<EFBFBD><01><13>z<EFBFBD>z<EFBFBD><04> <19><1F> 9<><03><19> <09><12>Q<EFBFBD><06><01><14>|<7C>#<23>t<EFBFBD>}<7D>}<7D>4<> <20>F<EFBFBD>E<EFBFBD><1E><1C>-<2D>B<EFBFBD><19>[<5B>(<28>U<EFBFBD>k<EFBFBD>-A<><1C> <0B> <0B>A<EFBFBD> <0C>$4<>5<>'+<2B>'8<>'8<> <0C>'+<2B>'8<>'8<> <0C> 9<><17>D<EFBFBD>F<EFBFBD> <10>J<EFBFBD>J<EFBFBD>L<EFBFBD><4C><17>D<EFBFBD>F<EFBFBD> <10>J<EFBFBD>J<EFBFBD>L<EFBFBD>s0<00>A:D<01>= C=<00>C=<00>0C=<00>6.C=<00>%D<01>=D<03>Dc<00><><00>|jry|dkr|xj|z c_|xj|z c_|j|jz
|jk\<00>r<>|j <00>}||j
z
}||j k\<00>rY||j|jzk\<00>r;|j <00>}|j|jz
}|jr&|r$|r"|j|<04>|j|<03>|j|j<00><03>|jr<>|jr5||jk\r&||j xs |jz|z |_n^|jr7|j!||j r|r|j |z ndz<00>|_nt#|j|<04>|_|j|_||_yyyy)ag
Manually update the progress bar, useful for streams
such as reading files.
E.g.:
>>> t = tqdm(total=filesize) # Initialise
>>> for current_buffer in stream:
... ...
... t.update(len(current_buffer))
>>> t.close()
The last line is highly recommended, but possibly not necessary if
`t.update()` will be called in such a way that `filesize` will be
exactly reached and printed.
Parameters
----------
n : int or float, optional
Increment to add to the internal counter of iterations
[default: 1]. If using float, consider specifying `{n:.3f}`
or similar in `bar_format`, or specifying `unit_scale`.
Returns
-------
out : bool or None
True if a `display()` was triggered.
Nrr<>r T)r<>r<>r<>r<>r<>r<>r<>rSr<>r<>r<>r<>rWr<>r<>r<>r<>r{)r6r<>r<>r<><00>dns r*rz tqdm.update<74>s<><00><00>4 <10><<3C><<3C> <12> <0C>q<EFBFBD>5<EFBFBD> <10> <1D> <1D><11> "<22> <1D> <0C><06><06>!<21> <0B><06> <10>6<EFBFBD>6<EFBFBD>D<EFBFBD>%<25>%<25> %<25><14><1D><1D> 6<><18>J<EFBFBD>J<EFBFBD>L<EFBFBD>E<EFBFBD><16><14>*<2A>*<2A>*<2A>B<EFBFBD><11>T<EFBFBD>%<25>%<25>%<25>%<25>4<EFBFBD><<3C><<3C>$<24>*<2A>*<2A>3L<33>*L<><1C>
<EFBFBD>
<EFBFBD> <0C><05><19>V<EFBFBD>V<EFBFBD>d<EFBFBD>/<2F>/<2F>/<2F><02><17>><3E>><3E>b<EFBFBD>R<EFBFBD><18>L<EFBFBD>L<EFBFBD><12>$<24><18>L<EFBFBD>L<EFBFBD><12>$<24><14> <0C> <0C>t<EFBFBD>~<7E>~<7E> <0C>6<><17>(<28>(<28> <1C>'<27>'<27>B<EFBFBD>$<24>2B<32>2B<32>,B<>(*<2A>d<EFBFBD>.><3E>.><3E>.R<>$<24>BR<42>BR<42>(S<>VX<56>(X<><04> <0A><1D><1E><1E>(,<2C>(:<3A>(:<3A><1E>4<EFBFBD>;K<>;K<>PR<50>$<24>"2<>"2<>R<EFBFBD>"7<>'(<28>*<2A>)+<2B><04> <0A>
),<2C>D<EFBFBD>M<EFBFBD>M<EFBFBD>2<EFBFBD>(><3E><04> <0A>%)<29>F<EFBFBD>F<EFBFBD><04>!<21>$)<29><04>!<21><1B>9+M<01>%<25> 7r)c<00>H<00><00><00>jryd<02>_t<00>j<00>}<01>j<00><00><00>j<00>j
<00>j zkryt<00>dd<01><00>y<01>fd<04>} |d<05><00>j<00>|dk(n <0B>j}<04>j5|r#d<08><00>_ <00>jd<07> <09>|d
<EFBFBD>n<1D>jd|<01> <0B>r
|s|d <0C>ddd<01>y#t$r}dt|<03>vrYd}~y<01>d}~wwxYw#1swYyxYw) z3Cleanup and (if leave=False) close the progressbar.NTr<54>c<00>N<00><01><00>jjt|<00><00>yr9)r<>r<>r2)r<>r6s <20>r*r8ztqdm.close.<locals>.fp_writes<00><><00> <10>G<EFBFBD>G<EFBFBD>M<EFBFBD>M<EFBFBD>#<23>a<EFBFBD>&<26> !r)rp<00>closedrc<00><00>yr9r(r(r)r*r<>ztqdm.close.<locals>.<lambda>r<>r)rBr/)r7r8r<>)r<>r<>r8rNr<>rSr<>r<><00>
ValueErrorr2r<>rFr<><00>display)r6r8r8r6r<>s` r*r<>z
tqdm.close<73>s<00><><00> <0F><<3C><<3C> <12><1C><04> <0C><12>$<24>(<28>(<28>m<EFBFBD><03> <0C><1C><1C>T<EFBFBD>"<22> <0F> <1C> <1C>t<EFBFBD>|<7C>|<7C>d<EFBFBD>j<EFBFBD>j<EFBFBD>8<> 8<> <12> <13>4<EFBFBD><14>t<EFBFBD> $<24> ,<2C> <12> "<22> <12> <14>R<EFBFBD>L<EFBFBD> !<21>J<EFBFBD>J<EFBFBD>.<2E><03>q<EFBFBD><08>D<EFBFBD>J<EFBFBD>J<EFBFBD><05> <11>Z<EFBFBD>Z<EFBFBD> #<23><14>+<2B><04> <0C><14> <0C> <0C><11> <0C>#<23><18><14><0E><18><<3C><<3C>B<EFBFBD>C<EFBFBD><<3C>0<><13><1C>T<EFBFBD>N<EFBFBD> #<23> #<23><><1A> <12><17>3<EFBFBD>q<EFBFBD>6<EFBFBD>!<21><16> <11><> <12><> #<23> #<23>s+<00>7C4<00>(AD<03>4 D<03>= D<03>D<03>D<03>D!c<00>~<00>|jry|s|jj<00>t|j<00>}||j
xsdkrO|j |<02>|jd<03>|jjd<04>|j | <00>|s|jj<00>yy)zClear current bar display.Nr?rpr<>) r<>rFrNr<>r8rI<00>movetor<6F>r<>r<>rR)r6rEr8s r*rLz
tqdm.clears<><00><00> <0F><<3C><<3C> <12><15> <10>J<EFBFBD>J<EFBFBD> <1E> <1E> <20><11>$<24>(<28>(<28>m<EFBFBD><03> <0E>$<24>*<2A>*<2A>"<22><02> #<23> <10>K<EFBFBD>K<EFBFBD><03> <1C> <10>G<EFBFBD>G<EFBFBD>B<EFBFBD>K<EFBFBD> <10>G<EFBFBD>G<EFBFBD>M<EFBFBD>M<EFBFBD>$<24> <1F> <10>K<EFBFBD>K<EFBFBD><13><04> <1D><15> <10>J<EFBFBD>J<EFBFBD> <1E> <1E> <20>r)c<00><><00>|jry|s6|r|jj|<02>sy|jj<00>|j<00>|s|jj <00>y)a<>
Force refresh the display of this bar.
Parameters
----------
nolock : bool, optional
If `True`, does not lock.
If [default: `False`]: calls `acquire()` on internal lock.
lock_args : tuple, optional
Passed to internal lock's `acquire()`.
If specified, will only `display()` if `acquire()` returns `True`.
NFT)r<>rFrNr<>rR)r6rEr<>s r*rWz tqdm.refresh-sZ<00><00> <10><<3C><<3C> <12><15><18>)<29>t<EFBFBD>z<EFBFBD>z<EFBFBD>)<29>)<29>9<EFBFBD>5<> <20><14>
<EFBFBD>
<EFBFBD>"<22>"<22>$<24> <0C> <0C> <0C><0E><15> <10>J<EFBFBD>J<EFBFBD> <1E> <1E> <20>r)c<00><><00>|jry|j<00>}|xj||jz
z c_||_y)z(Restart tqdm timer from last print time.N)r<>r<>rSr<>)r6r<>s r*<00>unpausez tqdm.unpauseHs8<00><00> <0F><<3C><<3C> <12><14>
<EFBFBD>
<EFBFBD> <0C><05> <0C> <0C> <0C><05><04> 1<> 1<>1<>1<> <0C>!<21><04>r)c<00>@<00>d|_|<01>||_|jryd|_|j <00>x|_|_t|j<00>|_ t|j<00>|_
t|j<00>|_ |j<00>y)z<>
Resets to 0 iterations for repeated use.
Consider combining with `leave=True`.
Parameters
----------
total : int or float, optional. Total to use for the new bar.
rN) r<>r<>r<>r<>r<>r<>rSr<>r<>r<>r<>r<>rW)r6r<>s r*<00>resetz
tqdm.resetPsy<00><00><13><04><06> <10> <1C><1E>D<EFBFBD>J<EFBFBD> <0F><<3C><<3C> <12><1D><04><19>+/<2F>:<3A>:<3A><<3C>7<><04><19>D<EFBFBD>L<EFBFBD><1A>4<EFBFBD>><3E>><3E>*<2A><04> <0C><1A>4<EFBFBD>><3E>><3E>*<2A><04> <0C> <20><14><1E><1E>0<><04><1A> <0C> <0C> <0C>r)c<00>F<00>|r|dznd|_|r|j<00>yy)z<>
Set/modify description of the progress bar.
Parameters
----------
desc : str, optional
refresh : bool, optional
Forces refresh [default: True].
r0rpN<>rrW<00>r6rrWs r*<00>set_descriptionztqdm.set_descriptionfs$<00><00>$(<28>D<EFBFBD>4<EFBFBD>K<EFBFBD>R<EFBFBD><04> <09> <12> <10>L<EFBFBD>L<EFBFBD>N<EFBFBD> r)c<00>@<00>|xsd|_|r|j<00>yy)z-Set/modify description without ': ' appended.rpNr<4E>r<>s r*<00>set_description_strztqdm.set_description_strts<00><00><18>J<EFBFBD>B<EFBFBD><04> <09> <12> <10>L<EFBFBD>L<EFBFBD>N<EFBFBD> r)c <00><><00><05>t|<01>gn|<01><00>t|j<00><00>D]
}||<00>|<<00> <00>j<00>D]R}t<00>|t<00>r|j <00>|<00><00>|<<00>.t<00>|t <00>r<01>Bt <00>|<00><00>|<<00>Tdj<00>fd<03><08>j<00>D<00><00>|_|r|j<00>yy)a8
Set/modify postfix (additional stats)
with automatic formatting based on datatype.
Parameters
----------
ordered_dict : dict or OrderedDict, optional
refresh : bool, optional
Forces refresh [default: True].
kwargs : dict, optional
Nr<4E>c3<00>P<00>K<00>|]}|dz<00>|j<00>z<00><01><00>y<01>w)<02>=N)<01>strip)r<>rCrs <20>r*r<>z#tqdm.set_postfix.<locals>.<genexpr><3E>s/<00><><00><><00>!<<3C>%(<28>"%<25>s<EFBFBD><19>W<EFBFBD>S<EFBFBD>\<5C>-?<3F>-?<3F>-A<>!A<>!<<3C>s<00>#&)
r<00>sorted<65>keysr}r r<>r2r<>rrW)r6<00> ordered_dictrWrGrCrs @r*r<>ztqdm.set_postfixzs<><00><><00><1E>L<EFBFBD>$8<>b<EFBFBD>l<EFBFBD>K<><07><19>&<26>+<2B>+<2B>-<2D>(<28> '<27>C<EFBFBD>!<21>#<23>;<3B>G<EFBFBD>C<EFBFBD>L<EFBFBD> '<27><1B><<3C><<3C>><3E> 1<>C<EFBFBD><19>'<27>#<23>,<2C><06>/<2F>#<23><EFBFBD><EFBFBD>w<EFBFBD>s<EFBFBD>|<7C><<3C><07><03> <0C><1F><07><03> <0C>c<EFBFBD>2<>"<22>7<EFBFBD>3<EFBFBD><<3C>0<><07><03> <0C>  1<><1C>y<EFBFBD>y<EFBFBD>!<<3C>,3<>L<EFBFBD>L<EFBFBD>N<EFBFBD>!<<3C><<3C><04> <0C> <12> <10>L<EFBFBD>L<EFBFBD>N<EFBFBD> r)c<00>J<00>t|<01>|_|r|j<00>yy)zS
Postfix without dictionary expansion, similar to prefix handling.
N)r2rrW)r6r<>rWs r*<00>set_postfix_strztqdm.set_postfix_str<74>s <00><00><1B>1<EFBFBD>v<EFBFBD><04> <0C> <12> <10>L<EFBFBD>L<EFBFBD>N<EFBFBD> r)c<00><><00>|jjd|zt<00>| zz<00>t|jdd<03><00><00>y)Nr/r<>c<00><00>yr9r(r(r)r*r<>ztqdm.moveto.<locals>.<lambda><3E>r<>r))r<>r<>rr<>)r6r<>s r*r<>z tqdm.moveto<74>s9<00><00> <0C><07><07> <0A> <0A>d<EFBFBD>Q<EFBFBD>h<EFBFBD><1D><1F>A<EFBFBD>2<EFBFBD>!5<>5<>6<>/<2F><07><04><07><07><17>,<2C>/<2F>1r)c<00><><00>|jr2t|d<01>s&td<02>|j|jddd<05><04>S|j
r(|j |j <00>\|_|_|j|jt|d<06>r|j<00>|jz
nd|j|j|j|j|j|j|j<00>r!|j!<00>|j<00>z nd|j"|j$|j&|j(|j*d<08>S) z'Public API for read-only member access.r<>c<00><00>yr9r(r(r)r*r<>z"tqdm.format_dict.<locals>.<lambda><3E>r<>r)r<00>it)r<>r<>r<>r<>rSN)r<>r<>r<>r<>rIrrr<>rrrrrrr<>)r<>rdrr<>r<>r<>r<>r<>rIr<>rSrrr<>rr<>r<>rrrrr<>r]s r*r%ztqdm.format_dict<63>s<><00><00> <10><<3C><<3C><07><04>f<EFBFBD> 5<><1E>|<7C><19>V<EFBFBD>V<EFBFBD>d<EFBFBD>j<EFBFBD>j<EFBFBD>Q<EFBFBD><04>.N<01>O<01> O<01> <0F> <1D> <1D>%)<29>%7<>%7<><04><07><07>%@<40> "<22>D<EFBFBD>J<EFBFBD><04>
<EFBFBD><15><16><16>$<24>*<2A>*<2A>6=<3D>d<EFBFBD>I<EFBFBD>6N<36>t<EFBFBD>z<EFBFBD>z<EFBFBD>|<7C>d<EFBFBD>l<EFBFBD>l<EFBFBD>2<>TU<54><19>Z<EFBFBD>Z<EFBFBD>$<24>*<2A>*<2A><04> <09> <09><19>Z<EFBFBD>Z<EFBFBD><14><19><19>$<24>/<2F>/<2F>7;<3B>|<7C>|<7C>~<7E>D<EFBFBD>L<EFBFBD>L<EFBFBD>N<EFBFBD>T<EFBFBD>\<5C>\<5C>^<5E>3<>4<EFBFBD><1E>/<2F>/<2F>d<EFBFBD>l<EFBFBD>l<EFBFBD> <20>-<2D>-<2D>$<24>,<2C>,<2C><1A>k<EFBFBD>k<EFBFBD>#<23> #r)c<00><><00>|<02>t|j<00>}|jxsd}||dz
k\r ||k\ry|s|<01>d}t|d<05>s:t dt |j dtjj<00><00><08><00>|r|j|<02>|j|<01>|j<00>n|<01>|r|j| <00>y )
a<EFBFBD>
Use `self.sp` to display `msg` in the specified `pos`.
Consider overloading this function when inheriting to use e.g.:
`self.some_frontend(**self.format_dict)` instead of `self.sp`.
Parameters
----------
msg : str, optional. What to display (default: `repr(self)`).
pos : int, optional. Position to `moveto`
(default: `abs(self.pos)`).
r?r Fz ... (more hidden) ...r<>zAPlease use `tqdm.gui.tqdm(...)` instead of `tqdm(..., gui=True)`
r<EFBFBD>rtT) r<>r8rIrdr!r<>r<>r<>r<>r<>r<>r<>r<>)r6r7r8rIs r*r<>z tqdm.display<61>s<><00><00> <0F>;<3B><15>d<EFBFBD>h<EFBFBD>h<EFBFBD>-<2D>C<EFBFBD><14>
<EFBFBD>
<EFBFBD> <20>b<EFBFBD><05> <0E>%<25>!<21>)<29> <1B><12>e<EFBFBD>|<7C><1C><12>c<EFBFBD>k<EFBFBD>.<2E><03><16>t<EFBFBD>T<EFBFBD>"<22>(<28>6<> <20><14><17><17>'<27>3<EFBFBD>:<3A>:<3A>3C<33>3C<33>D<>F<01> F<01>
<0F> <10>K<EFBFBD>K<EFBFBD><03> <1C> <0C><07><07>#<23>+<2B><04> <0C> <0C><0E>3<EFBFBD>7<> <0E> <10>K<EFBFBD>K<EFBFBD><13><04> <1D>r)c+<00><>K<00>|dd|i|<05><01>5}|rd|_d|_d|_t|j||<02><00><02>ddd<05>y#1swYyxYw<01>w)a<>
stream : file-like object.
method : str, "read" or "write". The result of `read()` and
the first argument of `write()` should have a `len()`.
>>> with tqdm.wrapattr(file_obj, "read", total=file_obj.size) as fobj:
... while True:
... chunk = fobj.read(chunk_size)
... if not chunk:
... break
r<><00>BTiNr()r<>rrrr)rS<00>stream<61>methodr<64><00>bytesr<73>r<>s r*<00>wrapattrz tqdm.wrapattr<74>sY<00><00><><00><11> ,<2C>u<EFBFBD> ,<2C> <0B> ,<2C> ><3E><01><14><1C><01><06>#<23><01> <0C>!%<25><01><0E>#<23>A<EFBFBD>H<EFBFBD>H<EFBFBD>f<EFBFBD>f<EFBFBD>=<3D> =<3D>  ><3E> ><3E> ><3E>s<00> A<01>1A<03> A<01>A<07> A)rp<00><>) NrpFrFNNNr rNr9)Nr/F)NF)NNNTNNg<4E><67><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?g$@NNFrFFr<46>NrNNr FNNNgF)r )F)FN)NT)rpTrd)6r%r&r'r:r/r0r r-<00> staticmethodr<64>r<>r<>r<>r(r+rlr=rNr<>rrPrZr,r<>rr<>r<>r5r<>r<>r<>r<>r^rbr<>r<>r<>r<>r<>r<>rr<>rLrWr<>r<>r<>r<>r<>r<>r<>r%r<>rr(r)r*rr<00>s.<00><00>v<08>p<1A><14><12>G<EFBFBD><18><19>J<EFBFBD><11>&<26><12>&<26>:<12>Q<01><12>Q<01>&<12>+<2B><12>+<2B>$<12><1C><12><1C>2<12>QU<51>KO<4B>:><3E>DK<01><12>DK<01>L<18> <11>I<01><11>I<01> <11>1<><11>1<>:<11><1A><11><1A><11><13>$<24><14><11>$<24>8<11><19><11><19><11><19><11><19> <11>uF<01><11>uF<01>p <0A>W<EFBFBD><04>e<EFBFBD>c<EFBFBD>W\<5C>9<<3C>s<EFBFBD>-L<01>M<01>NR<4E>IM<49>BG<42>NO<4E>MR<4D>IN<49> U)<29>M<01>U)<29>n#<23>/<2F> !<21>S<01><14>F<01><15>5<><0E>2<><0E>2<><18>$<19>LA<1C>F*#<23>X!<21> <14>6"<22><17>, <1B><1B> <1B>><1B>2<>
<0E>#<23><0E>#<23>""<14>H<11><13>><3E><14><11>>r)rc<00>&<00>tt|<00>fi|<01><01>S)z*Shortcut for tqdm(range(*args), **kwargs).)rr<>)rFrGs r*rr<00>s<00><00> <0F><05>t<EFBFBD> <0C> '<27><06> '<27>'r))4r:r<><00> collectionsrr<00>
contextlibrrrr<00>numbersr r
r<>r <00>weakrefr <00>_monitorr<00>utilsrrrrrrrrrrrr<00>
__author__<EFBFBD>__all__rrr<>r<00>Warningrr<>r <00>DeprecationWarningr!<00>RuntimeWarningr"rHrJrnr<>rrr(r)r*<00><module>rs<><00><01><04> <0B>0<>%<25>2<>2<><1A><15><19><1B><1E> <0A> <0A> <0A> <0A>
:<3A>
<EFBFBD> !<21><07>  <09>I<EFBFBD> <09> <09>8<EFBFBD> <09> "<22>'<27> "<22> <09>k<EFBFBD>=<3D> <09>
 <09>[<5B>*<<3C> <09>
 <09><1B>n<EFBFBD> <09>
 <0A>4X<01>4X<01>nOM<01>OM<01>dQ<01>Q<01>>{><3E>:<3A>{><3E>|'(r)