(s, strict=False)
Convert a raw mpf to a Python float. The result is exact if the
    bitcount of s is <= 53 and no underflow/overflow occurs.

    If the number is too large or too small to represent as a regular
    float, it will be converted to inf or 0.0. Setting strict=True
    forces an OverflowError to be raised instead.
Convert a raw mpf to a Python float. The result is exact if the
    bitcount of s is <= 53 and no underflow/overflow occurs.
Convert a raw mpf to a Python float . The result is exact if the bitcount of s is < = 53 and no underflow / overflow occurs .
def to_float(s, strict=False):
    """
    Convert a raw mpf to a Python float. The result is exact if the
    bitcount of s is <= 53 and no underflow/overflow occurs.

    If the number is too large or too small to represent as a regular
    float, it will be converted to inf or 0.0. Setting strict=True
    forces an OverflowError to be raised instead.
    """
    sign, man, exp, bc = s
    if not man:
        if s == fzero: return 0.0
        if s == finf: return math_float_inf
        if s == fninf: return -math_float_inf
        return math_float_inf/math_float_inf
    if sign:
        man = -man
    try:
        if bc < 100:
            return math.ldexp(man, exp)
        # Try resizing the mantissa. Overflow may still happen here.
        n = bc - 53
        m = man >> n
        return math.ldexp(m, exp + n)
    except OverflowError:
        if strict:
            raise
        # Overflow to infinity
        if exp + bc > 0:
            if sign:
                return -math_float_inf
            else:
                return math_float_inf
        # Underflow to zero
        return 0.0
def to_float ( s , strict = False ) : sign , man , exp , bc = s if not man : if s == fzero : return 0.0 if s == finf : return math_float_inf if s == fninf : return - math_float_inf return math_float_inf / math_float_inf if sign : man = - man try : if bc < 100 : return math . ldexp ( man , exp ) # Try resizing the mantissa. Overflow may still happen here. n = bc - 53 m = man >> n return math . ldexp ( m , exp + n ) except OverflowError : if strict : raise # Overflow to infinity if exp + bc > 0 : if sign : return - math_float_inf else : return math_float_inf # Underflow to zero return 0.0