映射协议 ¶
另请参阅
PyObject_GetItem()
,
PyObject_SetItem()
and
PyObject_DelItem()
.
-
int
PyMapping_Check
(
PyObject
*
o
)
¶
-
属于
稳定 ABI (应用程序二进制接口)
.
返回
1if the object provides the mapping protocol or supports slicing, and0otherwise. Note that it returns1for Python classes with a__getitem__()method, since in general it is impossible to determine what type of keys the class supports. This function always succeeds.
-
Py_ssize_t
PyMapping_Size
(
PyObject
*
o
)
¶
-
Py_ssize_t
PyMapping_Length
(
PyObject
*
o
)
¶
-
属于
稳定 ABI (应用程序二进制接口)
.
Returns the number of keys in object o on success, and
-1on failure. This is equivalent to the Python expressionlen(o).
-
PyObject
*
PyMapping_GetItemString
(
PyObject
*
o
,
const
char
*
key
)
¶
-
返回值:新引用。
属于
稳定 ABI (应用程序二进制接口)
.
这如同
PyObject_GetItem(),但 key is specified as a const char * UTF-8 encoded bytes string, rather than a PyObject * .
-
int
PyMapping_GetOptionalItem
(
PyObject
*
obj
,
PyObject
*
key
,
PyObject
*
*
result
)
¶
-
属于
稳定 ABI (应用程序二进制接口)
since version 3.13.
Variant of
PyObject_GetItem()which doesn’t raiseKeyErrorif the key is not found.If the key is found, return
1并设置 *result to a new 强引用 to the corresponding value. If the key is not found, return0并设置 *result toNULL;KeyErroris silenced. If an error other thanKeyErroris raised, return-1并设置 *result toNULL.3.13 版添加。