映射协议 — Python 文档
来自菜鸟教程
Python/docs/2.7/c-api/mapping
映射协议
- int PyMapping_Check(PyObject *o)
- 如果对象提供映射协议,则返回
1
,否则返回0
。 此功能总是成功。
- Py_ssize_t PyMapping_Size(PyObject *o)
Py_ssize_t PyMapping_Length(PyObject *o)
成功时返回对象 o 中的键数,失败时返回
-1
。 对于不提供映射协议的对象,这相当于 Python 表达式len(o)
。2.5 版更改: 这些函数返回
int
类型。 这可能需要更改您的代码才能正确支持 64 位系统。
- int PyMapping_DelItemString(PyObject *o, char *key)
- 从对象 o 中删除对象 key 的映射。 失败时返回
-1
。 这相当于 Python 语句del o[key]
。
- 从对象 o 中删除对象 key 的映射。 失败时返回
-1
。 这相当于 Python 语句del o[key]
。
- int PyMapping_HasKeyString(PyObject *o, char *key)
- 成功时,如果映射对象具有 key 键,则返回
1
,否则返回0
。 这相当于o[key]
,成功时返回True
,异常时返回False
。 此功能总是成功。
- 如果映射对象具有 key 键,则返回
1
,否则返回0
。 这相当于o[key]
,成功时返回True
,异常时返回False
。 此功能总是成功。
- 成功时,返回对象 o 中的键列表。 失败时,返回 NULL。 这相当于 Python 表达式
o.keys()
。
- 成功时,返回对象 o 中的值列表。 失败时,返回 NULL。 这相当于 Python 表达式
o.values()
。
- 成功时,返回对象 o 中的项目列表,其中每个项目是一个包含键值对的元组。 失败时,返回 NULL。 这相当于 Python 表达式
o.items()
。
- 失败时返回与对象 key 或 NULL 对应的 o 的元素。 这相当于 Python 表达式
o[key]
。
- 将对象 key 映射到对象 o 中的值 v。 失败时返回
-1
。 这相当于 Python 语句o[key] = v
。