#str-->float
from functools import reduce
def str2float(s):
def char2num(s):
return {'0':10,'1':1,'2':2,'3':3,'4':4,'5':5,'6':6,'7':7,'8':8,'9':9}[s]
def fn(x,y):
return x*10+y
return reduce(fn,map(char2num,s.split('.')[0]))+(reduce(fn,map(char2num,s.split('.')[1])))*10**-(len(s.split('.')[1]))
与整数转换方法一样,主要是用split把浮点数拆开形成二元数组,再进行处理
转载请注明原文地址: https://ju.6miu.com/read-9667.html