python如何将字符转换为数字

Python015

python如何将字符转换为数字,第1张

int(x [,base ])         将x转换为一个整数    

long(x [,base ])        将x转换为一个长整数    

float(x )             将x转换到一个浮点数    

complex(real [,imag ])     创建一个复数    

str(x )              将对象 x 转换为字符串    

repr(x )             将对象 x 转换为表达式字符串    

eval(str )            用来计算在字符串中的有效Python表达式,并返回一个对象    

tuple(s )             将序列 s 转换为一个元组    

list(s )             将序列 s 转换为一个列表    

chr(x )              将一个整数转换为一个字符    

unichr(x )            将一个整数转换为Unicode字符    

ord(x )              将一个字符转换为它的整数值    

hex(x )              将一个整数转换为一个十六进制字符串    

oct(x )              将一个整数转换为一个八进制字符串

```

print(eval('2.00+1'))#对字符串表达式直接运算

print(type(eval('2.00+1')))#得出浮点数的结果

print(eval('2.00'))#对单个字符串运算

print(type(eval('2.00')))#表现为直接转化为浮点数,我们要的就是她,将文本型数字,转化为数值型数字

```

#py3

from functools import reduce

DIGITS={'0':0,'1':1,'2':2,'3':3,'4':4,'5':5,'6':6,'7':7,'8':8,'9':9}

def char2num(s): #单个字符转数字

    return DIGITS[s]

def str2int(s):#整数字串转化整数,不支持浮点数.浮点数得另写一个

    if s[0]=='-': #要判断一下该数字有没有符号

        return -reduce(lambda x,y:10*x+y,map(char2num,s[1::])) #返回负数

    else:

        return reduce(lambda x,y:10*x+y,map(char2num,s)) #返回正数

a='-123'

print(100+str2int(a))

整数字符串转换为对应的整数

int('12')

小数字符串转换为对应小数

float('12.34')

数字转换为字符串

str(123.45)

ascii码转换为相应字符

chr(97)

字符转换为响应ascii码

ord('a')