浮動小数点型オブジェクト (floating point object)

type PyFloatObject

この PyObject のサブタイプは Python 浮動小数点オブジェクトを表現します。

PyTypeObject PyFloat_Type
Part of the Stable ABI.

この PyTypeObject のインスタンスは Python 浮動小数点型を表現します。これは Python レイヤにおける float と同じオブジェクトです。

int PyFloat_Check(PyObject *p)

引数が PyFloatObjectPyFloatObject のサブタイプであるときに真を返します。この関数は常に成功します。

int PyFloat_CheckExact(PyObject *p)

引数が PyFloatObject であるが PyFloatObject のサブタイプでないときに真を返します。この関数は常に成功します。

PyObject *PyFloat_FromString(PyObject *str)
Return value: New reference. Part of the Stable ABI.

str の文字列値をもとに PyFloatObject オブジェクトを生成します。失敗すると NULL を返します。

PyObject *PyFloat_FromDouble(double v)
Return value: New reference. Part of the Stable ABI.

v から PyFloatObject オブジェクトを生成して返します。 失敗すると NULL を返します。

double PyFloat_AsDouble(PyObject *pyfloat)
Part of the Stable 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)
Return value: New reference. Part of the Stable ABI.

float の精度、最小値、最大値に関する情報を含む structseq インスタンスを返します。これは、 float.h ファイルの薄いラッパーです。

double PyFloat_GetMax()
Part of the Stable ABI.

float の表現できる最大限解値 DBL_MAX を C の double 型で返します。

double PyFloat_GetMin()
Part of the Stable ABI.

float の正規化された最小の正の値 DBL_MIN を C の double 型で返します。