Your IP : 216.73.216.213
��Yf9P � @ s� d d l Z d d l Z d d l Z d d l Z d d l Z e e d d � d k rc e j d � � e j d e j e j
B� j Z d d d d
d � Z
d Z Gd
d � d e j � Z e d k r� e j � d S)� N�float_repr_style� ZshortzHcorrectly-rounded string->float conversions not available on this systemam # A numeric string consists of:
(?P<sign>[-+])? # an optional sign, followed by
(?=\d|\.\d) # a number with at least one digit
(?P<int>\d*) # having a (possibly empty) integer part
(?:\.(?P<frac>\d*))? # followed by an optional fractional part
(?:E(?P<exp>[-+]?\d+))? # and an optional exponent
\Z
�5 i� i c C s� t | � } | d k r$ t d � � | j d � p6 d } t | j d � | � } t | j d � pg d � t | � } | j d � d k } | d
t | d � d
t d | � } }
| s� | r� d Sd
S| j � |
j � } | | d k r� | | ?n | | >|
k 7} t | | � | } | t | d � >|
t | d � >} }
t | |
� \ }
} d | |
k s�d | |
k r�|
d @r�|
d 7}
|
j � | d k r�|
d }
| d 7} |
j � | k r�| | | k s�t � |
j � | k s| | | k st � | |
j � | k r/| r+d Sd S|
sC| r?d Sd
Sd | d d } d | d d } |
| >| | }
} d j | r�d n d |
d | |
d | | | d | � S)z�Convert a finite decimal string to a hex string representing an
IEEE 754 binary64 float. Return 'inf' or '-inf' on overflow.
This function makes no use of floating-point arithmetic at any
stage.Nzinvalid numeric stringZfracr �int�exp�0Zsign�-�
r z -0x0.0p+0z0x0.0p+0� � z-inf�inf� � z{}0x{:x}.{:0{}x}p{:+d}� )
�
strtod_parser�
ValueError�groupr �len�max�
bit_length�divmod�AssertionError�format)�s�mant_dig�min_exp�max_exp�mZfractionZintpartr Znegative�a�b�d�e�q�rZhexdigsZshift� r$ �5/opt/alt/python35/lib64/python3.5/test/test_strtod.py�strtod sF %,+(*
((r&