Ñò §ÚêLc@sÃdZddklZedddƒ[ddkZddd gZeid ƒZyd efd „ƒYZWne j o d ZnXd „Z d„Z d„Z d„Z d„Zd„ZdS(s8General floating point formatting functions. Functions: fix(x, digits_behind) sci(x, digits_behind) Each takes a number or a string and a number of digits as arguments. Parameters: x: number to be formatted; or a string resembling a number digits_behind: number of digits behind the decimal point iÿÿÿÿ(twarnpy3ks2the fpformat module has been removed in Python 3.0t stackleveliNtfixtscit NotANumbers-^([-+]?)0*(\d*)((?:\.\d*)?)(([eE][-+]?\d+)?)$cBseZRS((t__name__t __module__(((s /usr/lib64/python2.6/fpformat.pyRssfpformat.NotANumbercCsªti|ƒ}|djo t|‚n|iddddƒ\}}}}|djo d}n|o|d}n|ot|dƒ}nd}||||fS( sÅReturn (sign, intpart, fraction, expo) or raise an exception: sign is '+' or '-' intpart is 0 or more digits beginning with a nonzero fraction is 0 or more digits expo is an integeriiiit+tiN(tdecodertmatchtNoneRtgrouptint(tstrestsigntintparttfractiontexpparttexpo((s /usr/lib64/python2.6/fpformat.pytextract#s $ cCs¾|djoLt|ƒ}||| ||}}||jo|d||}q´n\|djoNt|ƒ}|| |||}}|| jod| ||}q´n||fS(s5Remove the exponent by changing intpart and fraction.it0(tlen(RRRtfti((s /usr/lib64/python2.6/fpformat.pytunexpo2s     cCsgt|ƒ}||jo||d||fSt|ƒ}||djod| dfS||}|||}|djo®||d}xL|djo$||djoPn|d}q“Wd|}|d}d}|| tt||ƒdƒdt|ƒ|d}|| ||}}n|djo||| fS|| d| dfSdS(s*Round or extend the fraction to size digs.RiRt5it9N(Rtchrtord(RRtdigsRRttotalt nextdigittn((s /usr/lib64/python2.6/fpformat.pyt roundfrac@s.        8 cCs÷t|ƒtdƒjot|ƒ}nyt|ƒ\}}}}Wntj o|SXt|||ƒ\}}t|||ƒ\}}x'|o|ddjo|d}qW|djo d}n|djo||d|S||SdS(s‡Format x as [-]ddd.ddd with 'digs' digits after the point and at least one digit before. If digs <= 0, the point is suppressed.RiRit.N(ttypetreprRRRR#(txRRRRR((s /usr/lib64/python2.6/fpformat.pyRZs   cCsÑt|ƒtdƒjot|ƒ}nt|ƒ\}}}}|phx1|o)|ddjo|d}|d}qKW|o#|d|d}}|d}qÝd}n.|t|ƒd}|d|d|}}td|ƒ}t|||ƒ\}}t|ƒdjo6|d|d|d |t|ƒd}}}n||}|djo|d|}ntt|ƒƒ}ddt|ƒ|}|djod|}n d |}|d |S( s¥Format x as [-]d.dddE[+-]ddd with 'digs' digits after the point and exactly one digit before. If digs is <= 0, one digit is kept and the point is suppressed.RiRiiÿÿÿÿR$it-Rte(R%R&RRtmaxR#tabs(R'RRRRRRR)((s /usr/lib64/python2.6/fpformat.pyRjs8       cCs[y;x4tdƒ\}}|Gt||ƒGt||ƒGHqWnttfj onXdS(sInteractive test run.sEnter (x, digs): N(tinputRRtEOFErrortKeyboardInterrupt(R'R((s /usr/lib64/python2.6/fpformat.pyttestŠs &(t__doc__twarningsRtret__all__tcompileR t ValueErrorRt TypeErrorRRR#RRR/(((s /usr/lib64/python2.6/fpformat.pyt s