猿问

函数将浮点数、基数转换为浮点数

试图创建函数来计算浮点数,从浮点数和基数。我们该怎么做?


这是我所做的


def frac(s, base):

    import math

    exp = range(math.log(s, base), -1, -1)

    for e in exp:

        d = (s // (base ** e))

        s -= d * (base ** e)

        yield d 

尝试瞄准类似的东西


(100.101, base=2) = 4.625


呼啦一阵风
浏览 115回答 1
1回答

SMILET

我认为最简单的方法是在没有小数点的字符串上使用内置整数功能,然后除以提高到小数位数的基数。def frac (s, base):    dotPos=s.find('.')    if (dotPos == -1):        return (int(s, base))    places = len(s)-dotPos-1    return (1.0*int(s[:dotPos]+s[dotPos+1:],base)/(base**places))print frac("100.1",2)
随时随地看视频慕课网APP

相关分类

Python
我要回答