Python字符串转换成浮点数函数分享

1266次阅读  |  发布于5年以前

利用map和reduce编写一个str2float函数,把字符串'123.456'转换成浮点数123.456


    from functools import reduce

    def str2float(s):
      return reduce(lambda x,y:x+int2dec(y),map(str2int,s.split('.')))
    def char2num(s):
      return {'0':0,'1':1,'2':2,'3':3,'4':4,'5':5,'6':6,'7':7,'8':8,'9':9}[s]
    def str2int(s):
      return reduce(lambda x,y:x*10+y,map(char2num,s))
    def intLen(i):
      return len('%d'%i)
    def int2dec(i):
      return i/(10**intLen(i))

    print(str2float('123.456'))

以上就是本代码的全部内容了,希望对大家学习Python能够有所帮助。

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8