Mapping Protocol

See alsoPyObject_GetItem(),PyObject_SetItem() andPyObject_DelItem().

intPyMapping_Check(PyObject*o)
Part of theStable ABI.

Return1 if the object provides the mapping protocol or supports slicing,and0 otherwise. Note that it returns1 for 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-1 on 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 asPyObject_GetItem(), butkey isspecified as aconstchar* UTF-8 encoded bytes string,rather than aPyObject*.

intPyMapping_SetItemString(PyObject*o,constchar*key,PyObject*v)
Part of theStable ABI.

This is the same asPyObject_SetItem(), butkey isspecified as aconstchar* UTF-8 encoded bytes string,rather than aPyObject*.

intPyMapping_DelItem(PyObject*o,PyObject*key)

This is an alias ofPyObject_DelItem().

intPyMapping_DelItemString(PyObject*o,constchar*key)

This is the same asPyObject_DelItem(), butkey isspecified as aconstchar* UTF-8 encoded bytes string,rather than aPyObject*.

intPyMapping_HasKey(PyObject*o,PyObject*key)
Part of theStable ABI.

Return1 if the mapping object has the keykey and0 otherwise.This is equivalent to the Python expressionkeyino.This function always succeeds.

Note

Exceptions which occur when this calls__getitem__()method are silently ignored.For proper error handling, usePyObject_GetItem() instead.

intPyMapping_HasKeyString(PyObject*o,constchar*key)
Part of theStable ABI.

This is the same asPyMapping_HasKey(), butkey isspecified as aconstchar* UTF-8 encoded bytes string,rather than aPyObject*.

Note

Exceptions that occur when this calls__getitem__()method or while creating the temporarystrobject are silently ignored.For proper error handling, usePyMapping_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, returnNULL.

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, returnNULL.

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, returnNULL.

Changed in version 3.7:Previously, the function returned a list or a tuple.