Discuss / Python / 这是一个“苯氮”的方法

这是一个“苯氮”的方法

Topic source
def str2float(s):
    digit = {'0':0,'1':1,'2':2,'3':3,'4':4,'5':5,'6':6,'7':7,'8': 8, '9': 9,'.':10}
    def fn(x,y):
        if y==10:
            return x
        return 10*x+y
    def char2num(s):
        return digit[s]

    fi = reduce(fn, map(char2num, s))
    n=0    for i in map(char2num, s):
       n=n+1       if i ==10:
           break    return fi/pow(10,n-1)

  • 1

Reply