利用map和reduce编写一个str2float函数,把字符串’123.456’转换成浮点数123.456:
# -*- coding: utf-8 -*-
from functools import reduce
def str2float(s):
n=s.index('.')
s1,s2=list(map(int,s[:n])),list(map(int,s[n+1:]))
print(s1,s2,s1+s2)
return reduce(lambda x,y:x*10+y,s1+s2)/(10**(len(s)-n-1))
Python index() 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,该方法与 python find()方法一样,只不过如果str不在 string中会报一个异常。
如果包含子字符串返回开始的索引值,否则抛出异常。