Your IP : 3.145.168.68


Current Path : /lib64/python3.8/__pycache__/
Upload File :
Current File : //lib64/python3.8/__pycache__/timeit.cpython-38.opt-2.pyc

U

e5d�4�@s�ddlZddlZddlZddlZddddgZdZdZdZejZ	e
Zd	Zd
d�Z
Gdd�d�Zd
d
e	edfdd�Zd
d
e	eedfdd�Zddd�dd�Zedkr�e�e��dS)�N�Timer�timeit�repeat�
default_timerz<timeit-src>i@B�z�
def inner(_it, _timer{init}):
    {setup}
    _t0 = _timer()
    for _i in _it:
        {stmt}
    _t1 = _timer()
    return _t1 - _t0
cCs|�ddd|�S)N�
� )�replace)�src�indent�r�/usr/lib64/python3.8/timeit.py�reindentOsrc@sLeZdZddedfdd�Zd
dd�Zefdd�Zeefd	d
�Z	ddd�Z
dS)r�passNcCs�||_i}|dkrt�n|}d}t|t�rJt|td�|d}t|d�}n*t|�rl||d<|d7}d}d}ntd��t|t�r�t||td�t|d	�}n&t|�r�||d
<|d7}d}ntd
��t	j
|||d�}	|	|_t|	td�}
t|
||�|d|_
dS)N��execr��_setupz, _setup=_setupz_setup()z&setup is neither a string nor callable�Z_stmtz
, _stmt=_stmtz_stmt()z%stmt is neither a string nor callable)�stmt�setup�init�inner)�timer�_globals�
isinstance�str�compile�dummy_src_namer�callable�
ValueError�template�formatr
rr)�selfrrr�globalsZlocal_nsZ	global_nsrZ
stmtprefixr
�coderrr
�__init__es6

zTimer.__init__cCsJddl}ddl}|jdk	r:t|j�d|j�d�tf|jt<|j|d�dS)Nrr��file)�	linecache�	tracebackr
�len�splitr�cache�	print_exc)r#r(r)r*rrr
r.�s

�
zTimer.print_exccCsBt�d|�}t��}t��z|�||j�}W5|r<t��X|S�N)�	itertoolsr�gcZ	isenabledZdisableZenablerr)r#�number�itZgcoldZtimingrrr
r�s

zTimer.timeitcCs*g}t|�D]}|�|�}|�|�q|Sr/)�ranger�append)r#rr2�r�i�trrr
r�s

zTimer.repeatcCsPd}dD]8}||}|�|�}|r,|||�|dkr||fSq|d9}qdS)N�)r9�rg�������?�
)r)r#�callbackr7�jr2�
time_takenrrr
�	autorange�s


zTimer.autorange)N)N)�__name__�
__module__�__qualname__rr&r.�default_numberr�default_repeatrr?rrrr
rSs�
#
rcCst||||��|�Sr/)rr)rrrr2r$rrr
r�scCst||||��||�Sr/)rr)rrrrr2r$rrr
r�s)�_wrap_timerc
s|dkrtjdd�}ddl}z(|�|ddddddd	d
ddg	�\}}Wn:|jk
r�}zt|�td
�WY�dSd}~XYnXt}d�|�p�d}d�g}t}d}	d�ddddd��d�|D]�\}
}|
dkr�t|��|
dkr�|�	|�|
dk�r|�k�r|�ntdtj
d�dS|
dk�r6t|�}|dk�r6d}|
dk�rFtj}|
dk�rf|	�r^�d7�|	d7}	|
dkr�tt
d d!�dSq�d�|��p�d}ddl}tj�d|j�|dk	�r�||�}t|||�}
�dk�rd}|	�r�fd"d#�}z|
�|�\�}Wn|
��YdSX|	�rt�z|
�|��}Wn|
��YdSX���fd$d%�}|	�rztd&d'�t||���t��fd(d)�|D�}t|�}td*��dk�r�d+nd,|||�f�t|�}t|�}||d-k�rddl}|�d.||�||�ftd,d�dS)/Nr9rz
n:u:s:r:tcpvhznumber=zsetup=zrepeat=�timeZclockZprocess�verbosezunit=�helpz#use -h/--help for command line helpr:rrg��&�.>g���ư>g����MbP?g�?)ZnsecZusecZmsecZsec�)z-nz--number)z-sz--setup)z-uz--unitz:Unrecognized unit. Please select nsec, usec, msec, or sec.r')z-rz--repeat)z-pz	--process)z-vz	--verbose)z-hz--helpr)�endcs.d}|dk}t|j||rdnd|�d��dS)Nz%{num} loop{s} -> {secs:.{prec}g} secsr9�sr)ZnumrKZsecsZprec)�printr")r2r>�msgZplural)�	precisionrr
r<?s�zmain.<locals>.callbackcs`�}|dk	r�|}n8dd����D�}|jdd�|D]\}}||kr8qNq8d�|||fS)NcSsg|]\}}||f�qSrr)�.0�unit�scalerrr
�
<listcomp>Ysz-main.<locals>.format_time.<locals>.<listcomp>T)�reversez%.*g %s)�items�sort)�dtrPrQZscales)rN�	time_unit�unitsrr
�format_timeSs
zmain.<locals>.format_timez
raw times: %sz, csg|]}|��qSrr)rOrV)r2rr
rRdszmain.<locals>.<listcomp>z"%d loop%s, best of %d: %s per looprKrrztThe test results are likely unreliable. The worst time (%s) was more than four times slower than the best time (%s).)�sys�argv�getopt�errorrLr�joinrD�intr5�stderrrF�process_time�__doc__�os�path�insert�curdirrr?r.r�map�min�max�warnings�
warn_explicit�UserWarning)�argsrEr\Zopts�errrrrrrG�o�arcr8r<�_Zraw_timingsrYZtimingsZbestZworstrjr)r2rNrWrXr
�main�s���


�





����rr�__main__)N)r1rZrFr0�__all__rrCrD�perf_counterrr$rr!rrrrrrr@�exitrrrr
�<module>4s4
�
�


?>