Документация Python неофициальный перевод

Объекты с плавающей запятойFloating Point Objects

PyFloatObject

Этот подтип PyObject представляет объект Python с плавающей запятой.

PyTypeObject PyFloat_Type

Этот экземпляр PyTypeObject представляет тип чисел с плавающей запятой в Python. Этот объект идентичен float и types.FloatType.

int PyFloat_Check(PyObject *p)

Возвращает истину, если аргумент является PyFloatObject или подтипом PyFloatObject.

Изменено в версии 2.2: Теперь допускаются подтипы.

int PyFloat_CheckExact(PyObject *p)

Возвращает истину, если аргумент является PyFloatObject, но не подтипом PyFloatObject.

Новое в версии 2.2.

PyObject* PyFloat_FromString(PyObject *str, char **pend)
Возвращаемое значение: новая ссылка.

Создаёт объект PyFloatObject на основе строкового значения в str или NULL в случае ошибки. Аргумент pend игнорируется. Он сохранён только для обратной совместимости.

PyObject* PyFloat_FromDouble(double v)
Возвращаемое значение: новая ссылка.

Создаёт объект PyFloatObject из v или NULL в случае ошибки.

double PyFloat_AsDouble(PyObject *pyfloat)

Возвращает C-представление double содержимого pyfloat. Если pyfloat не является объектом Python с плавающей запятой, но имеет метод __float__() этот метод сначала вызывается для преобразования pyfloat в число с плавающей запятой. При ошибке этот метод возвращает -1.0, поэтому для проверки ошибок следует вызывать PyErr_Occurred().

double PyFloat_AS_DOUBLE(PyObject *pyfloat)

Возвращает представление содержимого pyfloat в виде C double, но без проверки ошибок.

PyObject* PyFloat_GetInfo(void)

Возвращает экземпляр structseq, содержащий информацию о точности, минимальном и максимальном значениях числа с плавающей запятой. Это тонкая обёртка вокруг заголовочного файла float.h.

Новое в версии 2.6.

double PyFloat_GetMax()

Возвращает максимальное представимое конечное число с плавающей точкой DBL_MAX в виде C double.

Новое в версии 2.6.

double PyFloat_GetMin()

Возвращает минимальное нормализованное положительное число с плавающей точкой DBL_MIN в виде C double.

Новое в версии 2.6.

int PyFloat_ClearFreeList()

Очищает список свободных float. Возвращает количество элементов, которые не удалось освободить.

Новое в версии 2.6.

void PyFloat_AsString(char *buf, PyFloatObject *v)

Преобразует аргумент v в строку, используя те же правила, что и str(). Длина buf должна быть не менее 100.

Эту функцию небезопасно вызывать, потому что она записывает данные в буфер, длина которого ей неизвестна.

Устарело с версии 2.7: Вместо этого используйте PyObject_Str() или PyOS_double_to_string().

void PyFloat_AsReprString(char *buf, PyFloatObject *v)

То же, что PyFloat_AsString, но использует те же правила, что и repr(). Длина buf должна быть не менее 100.

Эту функцию небезопасно вызывать, потому что она записывает данные в буфер, длина которого ей неизвестна.

Устарело с версии 2.7: Вместо этого используйте PyObject_Repr() или PyOS_double_to_string().