# 抽象对象层

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

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

- 对象协议
- 呼叫协议
  - tp_call 协议
  - The Vectorcall Protocol
    - 递归控制
    - Vectorcall Support API
  - Object Calling API
  - Call Support API
- 数字协议
- 序列协议
- 映射协议
- 迭代器协议
- 缓冲协议
  - 缓冲区结构
  - Buffer request types
    - request-independent fields
    - readonly, format
    - 形状，步幅，子偏移量
    - 连续性的请求
    - 复合请求
  - 复杂数组
    - NumPy-风格：形状和步幅
    - PIL-风格：形状，步幅和子偏移量
  - 缓冲区相关函数
- 旧缓冲协议