2019-05-17 06:55:34 -03:00
|
|
|
.. highlight:: c
|
2008-01-20 05:30:57 -04:00
|
|
|
|
|
|
|
.. _noneobject:
|
|
|
|
|
2016-10-19 10:29:26 -03:00
|
|
|
The ``None`` Object
|
|
|
|
-------------------
|
2008-01-20 05:30:57 -04:00
|
|
|
|
2023-05-04 07:04:41 -03:00
|
|
|
.. index:: pair: object; None
|
2008-01-20 05:30:57 -04:00
|
|
|
|
2010-10-06 07:11:56 -03:00
|
|
|
Note that the :c:type:`PyTypeObject` for ``None`` is not directly exposed in the
|
2008-01-20 05:30:57 -04:00
|
|
|
Python/C API. Since ``None`` is a singleton, testing for object identity (using
|
2023-07-27 12:44:32 -03:00
|
|
|
``==`` in C) is sufficient. There is no :c:func:`!PyNone_Check` function for the
|
2008-01-20 05:30:57 -04:00
|
|
|
same reason.
|
|
|
|
|
|
|
|
|
2010-10-06 07:11:56 -03:00
|
|
|
.. c:var:: PyObject* Py_None
|
2008-01-20 05:30:57 -04:00
|
|
|
|
2023-06-21 17:13:25 -03:00
|
|
|
The Python ``None`` object, denoting lack of value. This object has no methods
|
|
|
|
and is `immortal <https://peps.python.org/pep-0683/>`_.
|
2008-01-20 05:30:57 -04:00
|
|
|
|
2023-06-21 17:13:25 -03:00
|
|
|
.. versionchanged:: 3.12
|
|
|
|
:c:data:`Py_None` is immortal.
|
2008-01-20 05:30:57 -04:00
|
|
|
|
2010-10-06 07:11:56 -03:00
|
|
|
.. c:macro:: Py_RETURN_NONE
|
2008-01-20 05:30:57 -04:00
|
|
|
|
2023-06-21 17:13:25 -03:00
|
|
|
Return :c:data:`Py_None` from a function.
|