Python

Python 知识量:10 - 41 - 150

2.6 类型转换><

整数和字符串转换为浮点数- 2.6.1 -

可使用float()函数,将整数和字符串转换为浮点数,例如:

>>> float(100)
100.0
>>> float('100')
100.0

注意,要转换的字符串必须“看上去”是一个数字,否则就会转换失败。

>>> float('1s')
Traceback (most recent call last):
  File "<pyshell#10>", line 1, in <module>
    float('1s')
ValueError: could not convert string to float: '1s'

整数和浮点数转换为字符串- 2.6.2 -

可使用str()函数,将整数和浮点数转换为字符串,例如:

>>> str(5)
'5'
>>> str(5.5)
'5.5'

浮点数转换为整数- 2.6.3 -

在浮点数转换为整数时,小数部分的处理方法是关键。函数int()会将小数部分直接删除;函数round()会使用圆整方式来处理。例如:

>>> int(4.6)
4
>>> round(4.6)
5
>>> round(4.4)
4
>>> round(4.5)
4
>>> round(5.5)
6

round()函数的圆整规则在处理小数部分是.5时很特别,它会将小数部分为.5的数字圆整到最接近的偶数,这被称为银行家圆整。在处理其他情况时,则按照四舍五入的规则圆整。

字符串转换为数字- 2.6.4 -

可以使用int()和float()函数轻松的将字符串转换为数字。注意,字符串必须“看上去”是一个数字,例如:

>>> int('6')
6
>>> float('6.6')
6.6

为满足更多转换需求,math模块提供了很多函数可以更灵活的处理小数部分,例如:math.trunc()、math.ceil()、math.floor()等。

隐式转换- 2.6.5 -

有时候Python会自动进行类型转换,称为隐式转换。例如在计算包含整数和浮点数的表达式时:

>>> 25*4.0
100.0