Дійсні числа
Дійсні числа визначають числа з плаваючою комою.
Створення
Літерали можуть бути представлені у вигляді:
- чисел, що містять розділювач цілої та дробової частини
- чисел, що містять символ
eабоEдля позначення порядку числа (експонента)
Інтерпретатор Python розпізнає дійсне число за наявністю символу "." ("крапка")
або експоненти (символ e або E).
Після того, як число розпізнане, створюється відповідний об’єкт дійсного типу.
Такий об’єкт використовується у подальших математичних виразах
як об’єкт дійсного типу (а не об’єкт цілого чи іншого типу).
2.85 # звичайне представлення дійсного числа
3. # число 3.0
1.3e-3 # число 0.0013
1.52E6 # 1520000.0
3e2 # 300.0
2.0E-1 # 0.2
Приведення інших типів до float
float(x=0, /)
До float можна привести int або str:
>>> float(1)
1.0
>>> float('1')
1.0
>>> float('1.')
1.0
>>> float('1e2')
100.0
>>> float()
0.0
>>>
Передаючи float() певні значення str можна створювати "особливі" об'єкти.
Нескінченність
>>> float('INFINITY')
inf
>>> float('-infinity')
-inf
>>> float('-inf')
-inf
>>>
В модулі math вже є об'єкт inf а також функція-предикат для порівняння з inf:
>>> from math import inf, isinf
>>> inf
inf
>>> isinf(float('-inf'))
True
>>>
NaN
Особливий об'єкт типу float — NaN (Not a Number).
Означає "значення, яке не є числом".
>>> float('NaN')
nan
>>> float('-nan')
nan
>>>
Різні об'єкти NaN не рівні по значенню:
>>> float('nan') == float('nan')
False
>>>
В модулі math вже є об'єкт nan а також функція-предикат для порівняння з NaN:
>>> from math import nan, isnan
>>> nan
nan
>>> isnan(nan)
True
>>> isnan(float('-nan'))
True
>>>
Класи можуть реалізовувати власний метод __float__() для приведення об'єкта до float.