将字符串型数字‘123.456’转换成float型数据
直接自带float就行啦
test1 ="123.456" test2 = '12.304' test3 = '12.34' print(float(test1)) print(float(test2)) print(float(test3))
结果:
123.456
12.304
12.34
使用map和reduce把字符串型数字‘123.456’转换成浮点数123.456
from functools import reduce
def str2float(s):
def fn(x,y):
return x*10+y
n=s.index('.')
s1=list(map(int,[x for x in s[:n]]))
s2=list(map(int,[x for x in s[n+1:]]))
return reduce(fn,s1)+reduce(fn,s2)/10**len(s2)测试:
str = "123.456"
str2float(str)
123.456
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。
发表评论