This document is for an old version of Python that is no longer supported. You should upgrade and read the Python documentation for the current stable release.

# Abstract Objects Layer

The functions in this chapter interact with Python objects regardless of their type, or with wide classes of object types (e.g. all numerical types, or all sequence types). When used on object types for which they do not apply, they will raise a Python exception.

It is not possible to use these functions on objects that are not properly initialized, such as a list object that has been created by `PyList_New()`, but whose items have not been set to some non-`NULL` value yet.

- Object Protocol
- Number Protocol
- Sequence Protocol
- Mapping Protocol
- Iterator Protocol
- Old Buffer Protocol