Объекты с плавающей точкой¶
-
PyTypeObject
PyFloat_Type
¶ - Part of the Stable ABI.
Этот экземпляр
PyTypeObject
представляет тип Python с плавающей точкой. Это тот же объект, что иfloat
в слое Python.
-
int
PyFloat_Check
(PyObject *p)¶ Возвращает true, если его аргумент является
PyFloatObject
или подтипомPyFloatObject
. Эта функция всегда успешна.
-
int
PyFloat_CheckExact
(PyObject *p)¶ Возвращает true, если ее аргумент является
PyFloatObject
, но не является подтипомPyFloatObject
. Эта функция всегда успешна.
-
PyObject *
PyFloat_FromString
(PyObject *str)¶ - Return value: New reference. Part of the Stable ABI.
Создать объект
PyFloatObject
на основе строкового значения в str, илиNULL
при неудаче.
-
PyObject *
PyFloat_FromDouble
(double v)¶ - Return value: New reference. Part of the Stable ABI.
Создать объект
PyFloatObject
из v, илиNULL
при неудаче.
-
double
PyFloat_AsDouble
(PyObject *pyfloat)¶ - Part of the Stable ABI.
Возвращает представление содержимого pyfloat в формате C double. Если pyfloat не является объектом Python с плавающей точкой, но имеет метод
__float__()
, то сначала будет вызван этот метод для преобразования pyfloat в float. Если__float__()
не определен, то он возвращается к__index__()
. При неудаче этот метод возвращает-1.0
, поэтому для проверки ошибок следует вызватьPyErr_Occurred()
.Изменено в версии 3.8: Используйте
__index__()
, если доступно.
-
double
PyFloat_AS_DOUBLE
(PyObject *pyfloat)¶ Возвращает представление C double содержимого pyfloat, но без проверки ошибок.
-
PyObject *
PyFloat_GetInfo
(void)¶ - Return value: New reference. Part of the Stable ABI.
Возвращает экземпляр structseq, который содержит информацию о точности, минимальном и максимальном значениях float. Это тонкая обертка вокруг заголовочного файла
float.h
.
-
double
PyFloat_GetMax
()¶ - Part of the Stable ABI.
Возвращает максимально представимое конечное число DBL_MAX в виде C double.
-
double
PyFloat_GetMin
()¶ - Part of the Stable ABI.
Возвращает минимальное нормализованное положительное плавающее число DBL_MIN в виде C double.