Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
Download
1576 views


�r�W��C@s�dZddlmZmZddlZddlmZddlmZyddl	Z	dZ
Wn�ek
rUdZ
ddlZej
���d	Zejd
dded�yddljjZ	Wn�ek
r8ZzReee�kr��ejd
�yddljjZ	Wnek
r%YnXWYddZ[Xnek
rIYnXWdQRXYnXyQe
dkr�ddlmZmZmZdZ
nddl	mZmZmZWngek
ry:ddlmZddlmZddlmZdZ
Wnek
rdZ
YnXYnXyddlmZWnek
r9YnXyddlmZWn"ek
rrddlmZYnXddddgiZ ddgZ!Gdd�de�Z"dd�Z#dS)a
IPython/Jupyter Notebook progressbar decorator for iterators.
Includes a default (x)range iterator printing to stderr.

Usage:
  >>> from tqdm_notebook import tnrange[, tqdm_notebook]
  >>> for i in tnrange(10): #same as: for i in tqdm_notebook(xrange(10))
  ...     ...
�)�division�absolute_importN�)�_range)�tqdm�� z.The `IPython.html` package has been deprecated�error�messagez.*�ignore)�IntProgress�HBox�HTML�)�IntProgressWidget)�ContainerWidget)r�)�display)�escapezgithub.com/Zlrq3000Z	casperdclZalexanderkuk�
tqdm_notebook�tnrangecs�eZdZdZedddd��Zeejddd��Z	�fdd	�Z
�fd
d�Z�fdd
�Z�fdd�Z
dd�Z�S)rzB
    Experimental IPython/Jupyter Notebook widget using tqdm!
    Ncs��rtddd���n'tdddd��d�_d�_|rT|�_t��td��g��t��ddd	����fd
d�}|S)zY
        Manage the printing of an IPython/Jupyter Notebook progress bar widget.
        �minr�maxr�infoZchildren�FNcs��rld}|rl|jd�}|dkrlt|d|��}||dd�}|dk	rl|�_|r�|jdd�}t|�}|�_|r��jdko�|dks�|�_|r��jdkr�d�_dS)	Nz/|/rrz||r�danger�successF)�find�int�value�replacer�	bar_styleZvisible)�s�closer!�nZnpos)�	container�pbar�ptext�total��2lib/python3.5/site-packages/tqdm/_tqdm_notebook.py�print_statusms$				z2tqdm_notebook.status_printer.<locals>.print_status)rrr!Zdescriptionrr
r)�_r(�descr+r))r%r&r'r(r*�status_printerRs
				
$'ztqdm_notebook.status_printer�
cCs|j|�|j|�dS)zM
        Print a message via tqdm_notebook (just an alias for print)
        N)�write)�clsr"�file�endr)r)r*r0�s
ztqdm_notebook.writecs�|jdtj�tjkr+tj|d<|jdd�sGd|d<d|d<tt|�j||�|js~|dr�dS|j|j	|j
|j�|_d|_|js�|j|j
��dS)Nr2Z
bar_formatz{n}/|/{l_bar}{r_bar}TZgui)�get�sys�stderr�stdout�superr�__init__�disabler.�fpr(r-�sp�__repr__)�self�args�kwargs)�	__class__r)r*r9�s


!		ztqdm_notebook.__init__c	/sQy/x(tt|�j||�D]}|VqWWn|jdd��YnXdS)Nr!r)r8r�__iter__r<)r>r?r@�obj)rAr)r*rB�s"
ztqdm_notebook.__iter__cs_ytt|�j||�Wn;tk
rZ}z|jdd�|�WYdd}~XnXdS)Nr!r)r8r�update�	Exceptionr<)r>r?r@�exc)rAr)r*rD�s
ztqdm_notebook.updatecswtt|�j||�|jrG|j|jkrG|jdd�n,|jrc|jdd�n|jdd�dS)Nr!rrr#T)r8rr#r(r$r<Zleave)r>r?r@)rAr)r*r#�s	ztqdm_notebook.closecOsdS)Nr))r?r@r)r)r*�moveto�sztqdm_notebook.moveto)�__name__�
__module__�__qualname__�__doc__�staticmethodr.�classmethodr5r7r0r9rBrDr#rGr)r))rAr*rMsC
	cOstt|�|�S)zq
    A shortcut for tqdm_notebook(xrange(*args), **kwargs).
    On Python3+ range is used instead of xrange.
    )rr)r?r@r)r)r*r�s)$rKZ
__future__rrr5Z_utilsrZ_tqdmrZ
ipywidgetsZIPY�ImportError�warnings�catch_warningsZipy_deprecation_msg�filterwarningsZIPython.html.widgetsZhtmlZwidgets�Warning�e�str�simplefilterrr
rrrZIPython.displayrrZcgi�
__author__�__all__rrr)r)r)r*�<module>	sf





	 




�