浮点数对象

type PyFloatObject

这个C类型 PyObject 的子类型代表一个Python浮点数对象。

PyTypeObject PyFloat_Type
Part of the Stable ABI.

这是个属于C类型 PyTypeObject 的代表Python浮点类型的实例。在Python层面的类型 float 是同一个对象。

int PyFloat_Check(PyObject *p)

如果它的参数是一个 PyFloatObject 或者 PyFloatObject 的子类型则返回真值。 此函数总是会成功执行。

int PyFloat_CheckExact(PyObject *p)

如果它的参数是一个 PyFloatObject 但不是 PyFloatObject 的子类型则返回真值。 此函数总是会成功执行。

PyObject *PyFloat_FromString(PyObject *str)
返回值:新的引用。 Part of the Stable ABI.

根据字符串 str 的值创建一个 PyFloatObject,失败时返回 NULL

PyObject *PyFloat_FromDouble(double v)
返回值:新的引用。 Part of the Stable ABI.

根据 v 创建一个 PyFloatObject 对象,失败时返回 NULL

double PyFloat_AsDouble(PyObject *pyfloat)
Part of the Stable ABI.

Return a C double representation of the contents of pyfloat. If pyfloat is not a Python floating point object but has a __float__() method, this method will first be called to convert pyfloat into a float. If __float__() is not defined then it falls back to __index__(). This method returns -1.0 upon failure, so one should call PyErr_Occurred() to check for errors.

在 3.8 版更改: 如果可用将使用 __index__()

double PyFloat_AS_DOUBLE(PyObject *pyfloat)

返回 pyfloat 的 C double 表示形式,但不带错误检测。

PyObject *PyFloat_GetInfo(void)
返回值:新的引用。 Part of the Stable ABI.

返回一个 structseq 实例,其中包含有关 float 的精度、最小值和最大值的信息。 它是头文件 float.h 的一个简单包装。

double PyFloat_GetMax()
Part of the Stable ABI.

返回 C double 形式的最大可表示有限浮点数 DBL_MAX

double PyFloat_GetMin()
Part of the Stable ABI.

返回 C double 形式的最小正规化正浮点数 DBL_MIN