Mapping Protocol¶
See alsoPyObject_GetItem(),PyObject_SetItem() andPyObject_DelItem().
- intPyMapping_Check(PyObject*o)¶
- Part of theStable ABI.
Return
1if the object provides the mapping protocol or supports slicing,and0otherwise. Note that it returns1for Python classes witha__getitem__()method, since in general it is impossible todetermine what type of keys the class supports. This function always succeeds.
- Py_ssize_tPyMapping_Size(PyObject*o)¶
- Py_ssize_tPyMapping_Length(PyObject*o)¶
- Part of theStable ABI.
Returns the number of keys in objecto on success, and
-1on failure.This is equivalent to the Python expressionlen(o).
- PyObject*PyMapping_GetItemString(PyObject*o,constchar*key)¶
- Return value: New reference. Part of theStable ABI.
This is the same as
PyObject_GetItem(), butkey isspecified as aconstchar* UTF-8 encoded bytes string,rather than aPyObject*.
- intPyMapping_GetOptionalItem(PyObject*obj,PyObject*key,PyObject**result)¶
- Part of theStable ABI since version 3.13.
Variant of
PyObject_GetItem()which doesn’t raiseKeyErrorif the key is not found.If the key is found, return
1and set*result to a newstrong reference to the corresponding value.If the key is not found, return0and set*result toNULL;theKeyErroris silenced.If an error other thanKeyErroris raised, return-1andset*result toNULL.Added in version 3.13.
- intPyMapping_GetOptionalItemString(PyObject*obj,constchar*key,PyObject**result)¶
- Part of theStable ABI since version 3.13.
This is the same as
PyMapping_GetOptionalItem(), butkey isspecified as aconstchar* UTF-8 encoded bytes string,rather than aPyObject*.Added in version 3.13.
- intPyMapping_SetItemString(PyObject*o,constchar*key,PyObject*v)¶
- Part of theStable ABI.
This is the same as
PyObject_SetItem(), butkey isspecified as aconstchar* UTF-8 encoded bytes string,rather than aPyObject*.
- intPyMapping_DelItem(PyObject*o,PyObject*key)¶
This is an alias of
PyObject_DelItem().
- intPyMapping_DelItemString(PyObject*o,constchar*key)¶
This is the same as
PyObject_DelItem(), butkey isspecified as aconstchar* UTF-8 encoded bytes string,rather than aPyObject*.
- intPyMapping_HasKeyWithError(PyObject*o,PyObject*key)¶
- Part of theStable ABI since version 3.13.
Return
1if the mapping object has the keykey and0otherwise.This is equivalent to the Python expressionkeyino.On failure, return-1.Added in version 3.13.
- intPyMapping_HasKeyStringWithError(PyObject*o,constchar*key)¶
- Part of theStable ABI since version 3.13.
This is the same as
PyMapping_HasKeyWithError(), butkey isspecified as aconstchar* UTF-8 encoded bytes string,rather than aPyObject*.Added in version 3.13.
- intPyMapping_HasKey(PyObject*o,PyObject*key)¶
- Part of theStable ABI.
Return
1if the mapping object has the keykey and0otherwise.This is equivalent to the Python expressionkeyino.This function always succeeds.Note
Exceptions which occur when this calls the
__getitem__()method are silently ignored.For proper error handling, usePyMapping_HasKeyWithError(),PyMapping_GetOptionalItem()orPyObject_GetItem()instead.
- intPyMapping_HasKeyString(PyObject*o,constchar*key)¶
- Part of theStable ABI.
This is the same as
PyMapping_HasKey(), butkey isspecified as aconstchar* UTF-8 encoded bytes string,rather than aPyObject*.Note
Exceptions that occur when this calls the
__getitem__()method or while creating the temporarystrobject are silently ignored.For proper error handling, usePyMapping_HasKeyStringWithError(),PyMapping_GetOptionalItemString()orPyMapping_GetItemString()instead.
- PyObject*PyMapping_Keys(PyObject*o)¶
- Return value: New reference. Part of theStable ABI.
On success, return a list of the keys in objecto. On failure, return
NULL.Changed in version 3.7:Previously, the function returned a list or a tuple.
- PyObject*PyMapping_Values(PyObject*o)¶
- Return value: New reference. Part of theStable ABI.
On success, return a list of the values in objecto. On failure, return
NULL.Changed in version 3.7:Previously, the function returned a list or a tuple.
- PyObject*PyMapping_Items(PyObject*o)¶
- Return value: New reference. Part of theStable ABI.
On success, return a list of the items in objecto, where each item is atuple containing a key-value pair. On failure, return
NULL.Changed in version 3.7:Previously, the function returned a list or a tuple.