在 Python 中,float()是一个内置函数,用于将字符串、整数或其他数字类型转换为浮点数类型。
函数语法
float(x)
参数:
x:要转换为浮点数的对象;可以是一个字符串、整数、浮点数或其他数字类型;
如果参数是字符串,则它必须是包含十进制数字的字符串,字符串前面可以有符号,之前也可以有空格;
float() 函数示例
将字符串转换为浮点数:
str_num = "3.14"
float_num = float(str_num)
print(float_num) # 输出 3.14
除了将字符串转换为浮点数类型之外,float()函数还可以将其他数字类型转换为浮点数类型,如下所示:
# 将整数转换为浮点数
int_num = 42
float_num = float(int_num)
print(float_num) # 输出 42.0
# 将其他数字类型转换为浮点数
complex_num = 1 + 2j
float_num = float(complex_num)
print(float_num) # 抛出TypeError异常,因为复数不能转换为浮点数类型
无穷大
参数也可以是正负无穷大的字符串;例如,inf、Inf、INFINITY、iNfINity都可以表示正无穷大。
float('-Infinity') #负无穷大
__float__()
如果参数是一个对象,float(x)会调用x.__float__(),如果x未定义__float__(),则调用__index__():
class c1:
def __float__(self):
return 0.01
class c2:
def __index__(self):
return 0
x1 = c1()
x2 = c2()
print(float(x1),float(x2)) #输出 0.01 0.0