Mapping Protocol¶
See alsoPyObject_GetItem()
,PyObject_SetItem()
andPyObject_DelItem()
.
- intPyMapping_Check(PyObject*o)¶
- Part of theStable ABI.
Return
1
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 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 raiseKeyError
if the key is not found.If the key is found, return
1
and set*result to a newstrong reference to the corresponding value.If the key is not found, return0
and set*result toNULL
;theKeyError
is silenced.If an error other thanKeyError
is raised, return-1
andset*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
1
if the mapping object has the keykey and0
otherwise.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
1
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, 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
__getitem__()
method or while creating the temporarystr
object 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.