LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 301|回复: 0

浮点数对象

[复制链接]
发表于 2024-1-26 17:52:17 | 显示全部楼层 |阅读模式


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

PyTypeObject PyFloat_Type
属于 稳定 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)
返回值:新的引用。 属于 稳定 ABI.
根据字符串 str 的值创建一个 PyFloatObject,失败时返回 NULL。

PyObject *PyFloat_FromDouble(double v)
返回值:新的引用。 属于 稳定 ABI.
根据 v 创建一个 PyFloatObject 对象,失败时返回 NULL。

double PyFloat_AsDouble(PyObject *pyfloat)
属于 稳定 ABI.
返回 pyfloat 的内容的 C double 表示形式。 如果 pyfloat 不是一个 Python 浮点数对象但是具有 __float__() 方法,则会先调用此方法来将 pyfloat 转换为浮点数。 如果 __float__() 未定义则将回退至 __index__()。 此方法在失败时将返回 -1.0,因此开发者应当调用 PyErr_Occurred() 来检测错误。

在 3.8 版本发生变更: 如果可能将使用 __index__()。

double PyFloat_AS_DOUBLE(PyObject *pyfloat)
返回 pyfloat 的 C double 表示形式,但不带错误检测。

PyObject *PyFloat_GetInfo(void)
返回值:新的引用。 属于 稳定 ABI.
返回一个 structseq 实例,其中包含有关 float 的精度、最小值和最大值的信息。 它是头文件 float.h 的一个简单包装。

double PyFloat_GetMax()
属于 稳定 ABI.
返回 C double 形式的最大可表示有限浮点数 DBL_MAX。

double PyFloat_GetMin()
属于 稳定 ABI.
返回 C double 形式的最小正规化正浮点数 DBL_MIN。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表