# 부동 소수점 객체

`PyFloatObject`

  이 `PyObject`의 서브 형은 파이썬 부동 소수점 객체를 나타냅니다.

PyTypeObject `PyFloat_Type`

  이 `PyTypeObject` 인스턴스는 파이썬 부동 소수점 형을 나타냅니다. 이것은 파이썬 계층에서 `float`와 같은 객체입니다.

int `PyFloat_Check`(PyObject *p)

  인자가 `PyFloatObject` 나 `PyFloatObject`의 서브 형이면 참을 반환합니다.

int `PyFloat_CheckExact`(PyObject *p)

  인자가 `PyFloatObject`이지만 `PyFloatObject`의 서브 형은 아니면 참을 반환합니다.

PyObject* `PyFloat_FromString`(PyObject *str)
  Return value: New reference.

  str의 문자열 값을 기반으로 `PyFloatObject` 객체를 만들거나, 실패하면 `NULL`.

PyObject* `PyFloat_FromDouble`(double v)
  Return value: New reference.

  v로부터 `PyFloatObject` 객체를 만들거나, 실패하면 `NULL`.

double `PyFloat_AsDouble`(PyObject *pyfloat)

  pyfloat 의 내용의 C `double` 표현을 반환합니다. pyfloat가 파이썬 부동 소수점 객체가 아니지만 `__float__()` 메서드가 있으면, pyfloat를 float로 변환하기 위해 이 메서드가 먼저 호출됩니다. `__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.

  float의 정밀도, 최솟값, 최댓값에 관한 정보를 포함한 structseq 인스턴스를 돌려줍니다. 헤더 파일 `float.h`를 감싸는 얇은 래퍼입니다.

double `PyFloat_GetMax`()

  최대 표현 가능한 유한 float DBL_MAX를 C `double`로 반환합니다.

double `PyFloat_GetMin`()

  최소 정규화된(normalized) 양의 float DBL_MIN를 C `double`로 반환합니다.

int `PyFloat_ClearFreeList`()

  float 자유 목록(free list)을 비웁니다. 해제할 수 없는 항목의 수를 반환합니다.