码迷,mamicode.com
首页 > 编程语言 > 详细

将字符串转化为数字的python实现

时间:2015-07-09 21:33:26      阅读:369      评论:0      收藏:0      [点我收藏+]

标签:字符串转化为数字   python   map   reduce   

将字符串转化为数字的python实现

将字符串转化为数字的python实现,例如将字符串“1234567.8”转化为 1234567.8

这也是学习python中的一个简单的练习题,代码如下:

# coding=UTF-8 将字符串转化为数字
from functools import reduce
import math
def char2int(s):
    return {‘0‘:0,‘1‘:1,‘2‘:2,‘3‘:3,‘4‘:4,‘5‘:5,‘6‘:6,‘7‘:7,‘8‘:8,‘9‘:9}[s]
def mulit_int(x,y):
    return 10*x+y

def str2int(s):
    if s.find(‘.‘)==-1:#不是浮点数
        return reduce(mulit_int,map(char2int,s))
    else:#是浮点数
        s1=s.split(‘.‘)
        s2int=reduce(mulit_int,map(char2int,s1[0])) #整数部分

        s2float=reduce(mulit_int,map(char2int,s1[1]))*0.1**len(s1[1]) #小数部分
        return s2int+s2float

print(str2int("123345.678"))    

上面涉及到的知识点又python中内置的map()和reduce()函数的应用。

  • 其中map()函数要接收两个参数,第一个参数为函数,第二个参数为一个Iterable对象,map将传入的函数依次作用到序列的每个元素,结果以Iterable返回。

  • 而reduce()函数也接收两个参数,与map一样,但是reduce函数是把结果和序列中剩下的元素一起继续参与运算

版权声明:本文为博主原创文章,未经博主允许不得转载。

将字符串转化为数字的python实现

标签:字符串转化为数字   python   map   reduce   

原文地址:http://blog.csdn.net/u010412719/article/details/46820841

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!