Дійсні числа
Дійсні числа визначають числа з плаваючою комою.
Створення
Літерали можуть бути представлені у вигляді:
- чисел, що містять розділювач цілої та дробової частини
- чисел, що містять символ
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
.