# 第三题,
from functools import reduce
def str2float(s):
DIGITS={'0':0,'1':1,'2':2,'3':3,'4':4,'5':5,'6':6,'7':7,'8':8,'9':9}
def char2int(s): # s为key
return DIGITS[s] # 生成value
return reduce(lambda x,y:x*10+y,map(char2int,s[:s.index('.')]))+reduce(lambda x,y:x*10+y,map(char2int,s[s.index('.')+1:]))/(10**len(s[s.index('.')+1:]))
print(str2float('63377.3789876789876') )
Sign in to make a reply
longtometosee
# 第三题,
from functools import reduce
def str2float(s):
DIGITS={'0':0,'1':1,'2':2,'3':3,'4':4,'5':5,'6':6,'7':7,'8':8,'9':9}
def char2int(s): # s为key
return DIGITS[s] # 生成value
return reduce(lambda x,y:x*10+y,map(char2int,s[:s.index('.')]))+reduce(lambda x,y:x*10+y,map(char2int,s[s.index('.')+1:]))/(10**len(s[s.index('.')+1:]))
print(str2float('63377.3789876789876') )