# 抽象对象层

本章中的函数与 Python对象交互，无论其类型，或具有广泛类的对象类型（例如，所有数值类型，或所有序列类型）。当使用对象类型并不适用时，他们会产生一个 Python 异常。

这些函数是不可能用于未正确初始化的对象的，如一个列表对象被 `PyList_New()` 创建，但其中的项目没有被设置为一些非``NULL``的值。

- 对象协议
- Call Protocol
  - The tp_call Protocol
  - The Vectorcall Protocol
    - Recursion Control
    - Vectorcall Support API
  - Object Calling API
  - Call Support API
- 数字协议
- 序列协议
- 映射协议
- 迭代器协议
- 缓冲协议
  - 缓冲区结构
  - Buffer request types
    - request-independent fields
    - readonly, format
    - shape, strides, suboffsets
    - 连续性的请求
    - compound requests
  - 复杂数组
    - NumPy-style: shape and strides
    - PIL-style: shape, strides and suboffsets
  - Buffer-related functions
- 旧缓冲协议