# 7.2.2 Boolean Objects

##
7.2.2 Boolean Objects

Booleans in Python are implemented as a subclass of integers. There are only two booleans, `Py_False` and `Py_True`. As such, the normal creation and deletion functions don't apply to booleans. The following macros are available, however.

int `PyBool_Check`( | PyObject *o)

  Returns true if o is of type `PyBool_Type`. New in version 2.3.

PyObject* `Py_False`
  The Python `False` object. This object has no methods. It needs to be treated just like any other object with respect to reference counts.

PyObject* `Py_True`
  The Python `True` object. This object has no methods. It needs to be treated just like any other object with respect to reference counts.

`Py_RETURN_FALSE`
  Return `Py_False` from a function, properly incrementing its reference count. New in version 2.4.

`Py_RETURN_TRUE`
  Return `Py_True` from a function, properly incrementing its reference count. New in version 2.4.

int `PyBool_FromLong`( | long v)

  Returns `Py_True` or `Py_False` depending on the truth value of v. New in version 2.3.