Python中 使用map()和reduce()函数编写一个str2float函数
2018-09-15 11:37
501 查看
Python中 使用map()和reduce()函数编写一个str2float函数
作为一个编程的初学者,最近在参照廖雪峰老师的网站资源学习python。
在网站中 Python教程/函数式编程/高阶函数/map/reduce 下有一道练习题是:
利用map和reduce编写一个str2float函数,把字符串’123.456’转换成浮点数123.456:
在参照了一些网上的代码之后,我写了一段代码,也同样实现了所要求的功能。鉴于我还没有看到与此相同的代码,所以贴出来分享一下。
—-代码—–
# -*- coding: utf-8 -*- from functools import reduce def str2float(s): -----以下为输入内容----- n=s.index('.') #确定小数点的位置 s1=s[:n] #将输入的字符串分为两部分,s1代表整数部分 s2=s[n+1:] #s2代表小数部分 #定义str2num()函数,将字符串转为元素为单个数字的list digits={'1':1,'2':2,'3':3,'4':4,'5':5,'6':6,'7':7,'8':8,'9':9} def str2num(s): return digits[s] #定义函数f,使上述得到的list中的数字元素转换为一个实数 def f(x, y): return 10*x + y #将所得到的整数部分和小数部分相加,即得到所求的float实数结果 return (reduce(f, map(str2num, s1))+reduce(f, map(str2num, s2))/10**len(s2)) -----以上为输入内容----- print('str2float(\'123.456\') =', str2float('123.456')) if abs(str2float('123.456') - 123.456) < 0.00001: print('测试成功!') else: print('测试失败!')
上述代码中的map()函数与reduce()函数的应用,可参考廖雪峰的官方网站的相关内容以及实例:map/reduce
—-运行结果——
将代码进行验证,得到的运行结果显示正确:
—-结束—–
希望可以对大家有所帮助。
阅读更多相关文章推荐
- Python高阶函数(Map、Reduce、Filter)和lambda函数一起使用 ,三剑客
- 基于python的-map(),reduce(),filter()函数的使用与区别
- python中map、filter、reduce 函数使用方法
- 利用map和reduce编写实现字符串转化为浮点数的str2float()函数
- python3中内建函数map()与reduce()的使用方法
- JS学习笔记1——不要使用JavaScript内置的parseInt()和Number()函数,利用map和reduce操作实现一个string2int()函数
- Python 使用map()和reduce() 函数将带小数点的字符串数字转化成小数
- python:内建函数、range()、map()、filter()、reduce()、sorted()、集合的使用、functools中的函数使用、MD5加密
- python中map()函数和reduce()函数的使用
- python map(),reduce()函数的使用
- Python中的高级函数map/reduce使用实例
- python:内建函数、range()、map()、filter()、reduce()、sorted()、集合的使用、functools中的函数使用、MD5加密
- 练习:不要使用JavaScript内置的parseInt()函数,利用map和reduce操作实现一个string2int()函数
- python中的zip、map、reduce 、lambda函数的使用。
- 不要使用JavaScript内置的parseInt()函数,利用map和reduce操作实现一个string2int()函数:
- python学习日记-利用map和reduce编写一个str2float函数,把字符串'123.456'转换成浮点数123.456:(转自他人)
- 【c语言】编写一个函数reverse_string(char * string) 实现:将参数字符串中的字符反向排列。 要求:不能使用C函数库中的字符串操作函数
- 【C语言】编写一个函数实现n^k,使用递归实现
- Python中的map()函数和reduce()函数的用法
- 如何使用Python为Hadoop编写一个简单的MapReduce程序