Protocolo de mapeo¶
Consulte también PyObject_GetItem()
, PyObject_SetItem()
y PyObject_DelItem()
.
-
int
PyMapping_Check
(PyObject *o)¶ - Part of the Stable ABI.
Return
1
if the object provides the mapping protocol or supports slicing, and0
otherwise. Note that it returns1
for 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)¶ - Part of the Stable ABI.
Retorna el número de claves en el objeto o en caso de éxito, y
-1
en caso de error. Esto es equivalente a la expresión de Pythonlen(o)
.
-
PyObject *
PyMapping_GetItemString
(PyObject *o, const char *key)¶ - Return value: New reference. Part of the Stable ABI.
Retorna el elemento de o correspondiente a la cadena de caracteres key o
NULL
en caso de error. Este es el equivalente de la expresión de Pythono[key]
. Ver tambiénPyObject_GetItem()
.
-
int
PyMapping_SetItemString
(PyObject *o, const char *key, PyObject *v)¶ - Part of the Stable ABI.
Asigna la cadena de caracteres key al valor v en el objeto o. Retorna
-1
en caso de falla. Este es el equivalente de la declaración de Pythono[key] = v
. Ver tambiénPyObject_SetItem()
. Esta función no roba una referencia a v.
-
int
PyMapping_DelItem
(PyObject *o, PyObject *key)¶ Elimina la asignación para el objeto key del objeto o. Retorna
-1
en caso de falla. Esto es equivalente a la declaración de Pythondel o[key]
. Este es un alias dePyObject_DelItem()
.
-
int
PyMapping_DelItemString
(PyObject *o, const char *key)¶ Elimina la asignación de la cadena de caracteres key del objeto o. Retorna
-1
en caso de falla. Esto es equivalente a la declaración de Pythondel o[key]
.
-
int
PyMapping_HasKey
(PyObject *o, PyObject *key)¶ - Part of the Stable ABI.
Retorna
1
si el objeto de mapeo tiene la clave key y0
de lo contrario. Esto es equivalente a la expresión de Pythonkey in o
. Esta función siempre finaliza con éxito.Tenga en cuenta que las excepciones que se producen al llamar al método
__getitem__()
se suprimirán. Para obtener informes de errores, utilicePyObject_GetItem()
en su lugar.
-
int
PyMapping_HasKeyString
(PyObject *o, const char *key)¶ - Part of the Stable ABI.
Retorna
1
si el objeto de mapeo tiene la clave key y0
de lo contrario. Esto es equivalente a la expresión de Pythonkey in o
. Esta función siempre finaliza con éxito.Tenga en cuenta que las excepciones que se producen al llamar al método
__getitem__()
y al crear un objeto de cadena de caracteres temporal se suprimirán. Para obtener informes de errores, utilicePyMapping_GetItemString()
en su lugar.
-
PyObject *
PyMapping_Keys
(PyObject *o)¶ - Return value: New reference. Part of the Stable ABI.
En caso de éxito, retorna una lista de las claves en el objeto o. En caso de fallo, retorna
NULL
.Distinto en la versión 3.7: Anteriormente, la función retornaba una lista o una tupla.
-
PyObject *
PyMapping_Values
(PyObject *o)¶ - Return value: New reference. Part of the Stable ABI.
En caso de éxito, retorna una lista de los valores en el objeto o. En caso de fallo, retorna
NULL
.Distinto en la versión 3.7: Anteriormente, la función retornaba una lista o una tupla.
-
PyObject *
PyMapping_Items
(PyObject *o)¶ - Return value: New reference. Part of the Stable ABI.
En caso de éxito, retorna una lista de los elementos en el objeto o, donde cada elemento es una tupla que contiene un par clave-valor (key-value). En caso de fallo, retorna
NULL
.Distinto en la versión 3.7: Anteriormente, la función retornaba una lista o una tupla.