summaryrefslogtreecommitdiffstats
path: root/Doc/c-api/none.rst
blob: 70e2c04bd062d5c79b7b66f660d09fa114325f8b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
.. highlightlang:: c

.. _noneobject:

The None Object
---------------

.. index:: object: None

Note that the :ctype:`PyTypeObject` for ``None`` is not directly exposed in the
Python/C API.  Since ``None`` is a singleton, testing for object identity (using
``==`` in C) is sufficient. There is no :cfunc:`PyNone_Check` function for the
same reason.


.. cvar:: PyObject* Py_None

   The Python ``None`` object, denoting lack of value.  This object has no methods.
   It needs to be treated just like any other object with respect to reference
   counts.


.. cmacro:: Py_RETURN_NONE

   Properly handle returning :cdata:`Py_None` from within a C function (that is,
   increment the reference count of None and return it.)