Документация Python неофициальный перевод

Логические объектыBoolean Objects

Булевы значения в Python реализованы как подкласс целых чисел. Существует только два булевых значения: Py_False и Py_True. Поэтому обычные функции создания и удаления к булевым значениям не применяются. Тем не менее, доступны следующие макросы.

int PyBool_Check(PyObject *o)

Возвращает true, если o имеет тип PyBool_Type.

PyObject* Py_False

Объект Python False. Этот объект не имеет методов. С точки зрения подсчёта ссылок его нужно обрабатывать так же, как любой другой объект.

PyObject* Py_True

Объект Python True. Этот объект не имеет методов. С точки зрения подсчёта ссылок его нужно обрабатывать так же, как любой другой объект.

Py_RETURN_FALSE

Возвращает Py_False из функции, правильно увеличивая его счётчик ссылок.

Py_RETURN_TRUE

Возвращает Py_True из функции, правильно увеличивая его счётчик ссылок.

PyObject* PyBool_FromLong(long v)
Возвращаемое значение: новая ссылка.

Возвращает новую ссылку на Py_True или Py_False в зависимости от истинностного значения v.