Python浮点数和整数、字符串之间的转换

本节介绍浮点数和其他类型之间的相互转换,如将浮点数转换成字符串或整数。

由于 Python 是强类型语言,某些操作仅对特定类型有效,有时就需要先将其转换特定类型,然后才能完成对应的操作。如加法运算,其不能针对字符串,但是文件操作得到的就是字符串,那么就需要先将从文件得到的字符串转化成数值型对象,如整数,或者浮点数,然后进行加法运算。

1) 转换成整型——int()

该函数将小数部分丢掉,该操作不会进行四舍五入操作。
>>> a = 1.2   # 1.2被处理为1
>>> b = int(a)
>>> type(b)
<type 'int'>
>>> b
1
>>> a = 1.9   # 即使是小数部分大于0.5,也会被舍弃
>>> int(a)
1

2) 转换成字符串——str()

该函数将其他类型转换成字符串。
>>> a = 12.88                         
>>> b = str(a)  # 将浮点数转换成字符串
>>> type(b)
<type 'str'>
>>> b
'12.88'

3) 从字符串转换成浮点数——eval()

可以看作是 str() 的逆操作。str() 将其他类型转换成字符串,eval() 将字符串转换成其他类型的对象。
>>> a = '1.23'
>>> b = eval(a)
>>> type(b)
<type 'float'>
>>> b
1.23