利用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能够有所帮助。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。