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

type `PyFloatObject`

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

PyTypeObject `PyFloat_Type`
  Part of the Stable ABI.

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

int `PyFloat_Check`(PyObject *p)

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

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` 型で返します。