Функция float() используется в Python для преобразования числа или строки в число с плавающей точкой.
Что такое float() в Python?
Функция float() принимает строку или число, как целое, так и число с плавающей точкой, и преобразует его в число с плавающей точкой, если это возможно:
float(x)
Если x — это строка, она должна содержать десятичное число. Также она может иметь необязательный знак, например, минус(-) или плюс(+).
Если x — целое число или число с плавающей точкой, float() возвращает то же число с плавающей точкой с тем же значением. Если значение выходит за пределы диапазона числа с плавающей точкой Python, float() вызовет OverflowError.
Если x — объект, float() делегирует методу x.__float__(). Если объект x не имеет метода __float__(), float() будет использовать метод __index__().
Параметр x необязателен. Если его опустить, float() вернет 0.0.
Примеры использования функции float() в Python
Давайте рассмотрим несколько примеров использования функции Python float().

1) Использование float() для преобразования строки в число с плавающей точкой
В следующем примере функция float() используется для преобразования строк в числа с плавающей точкой:
f = float('+1.99')
print(f) # 👉 1.99
f = float('-5.99')
print(f) # 👉 -5.99
f = float('199e-001')
print(f) # 👉 19.9
f = float('+1E3')
print(f) # 👉 1000.0
f = float('-Infinity')
print(f) # 👉 -inf
2) Преобразование целого числа в число с плавающей точкой с помощью float()
В следующем примере функция float() используется для преобразования целых чисел в числа с плавающей точкой:
f = float(10) print(f) # 👉 10.0 f = float(-20) print(f) # 👉 -20.0 f = float(0) print(f) # 👉 0.0 f = float() print(f) # 👉 0.0
3) Преобразование объекта в число с плавающей точкой
Следующий пример иллюстрирует, как преобразовать объект в число с плавающей точкой:
class Product:
def __init__(self, name, price):
self.name = name
self.price = price
def __float__(self):
return float(self.price)
phone = Product('phone', 999)
print(float(phone))
Выход:
999.0
Как это работает.
Сначала определите класс Product, который имеет два атрибута name и price. Метод __float__() возвращает число с плавающей точкой цены:
class Product:
def __init__(self, name, price):
self.name = name
self.price = price
def __float__(self):
return float(self.price)
Во-вторых, создайте новый экземпляр продукта и преобразуйте его в число с плавающей точкой:
phone = Product('phone', 999)
print(float(phone)) 