Protocole de correspondance

Voir aussi PyObject_GetItem(), PyObject_SetItem() et PyObject_DelItem().

int PyMapping_Check(PyObject *o)

Return 1 if the object provides mapping protocol or supports slicing, and 0 otherwise. Note that it returns 1 for Python classes with a __getitem__() method since in general case it is impossible to determine what type of keys it supports. This function always succeeds.

Py_ssize_t PyMapping_Size(PyObject *o)
Py_ssize_t PyMapping_Length(PyObject *o)

Renvoie le nombre de clefs dans l'objet o et -1 en cas d'échec. C'est l'équivalent de l'expression Python len(o).

PyObject* PyMapping_GetItemString(PyObject *o, const char *key)
Return value: New reference.

Return element of o corresponding to the string key or NULL on failure. This is the equivalent of the Python expression o[key]. See also PyObject_GetItem().

int PyMapping_SetItemString(PyObject *o, const char *key, PyObject *v)

Map the string key to the value v in object o. Returns -1 on failure. This is the equivalent of the Python statement o[key] = v. See also PyObject_SetItem().

int PyMapping_DelItem(PyObject *o, PyObject *key)

Supprime la correspondance associée à l'objet key dans l'objet o. Renvoie -1 en cas d'échec. C'est l'équivalent de la commande Python del o[key]. C'est un alias pour PyObject_DelItem().

int PyMapping_DelItemString(PyObject *o, const char *key)

Supprime la correspondance associée à la chaîne key dans l'objet o. Renvoie -1 en cas d'échec. C'est l'équivalent de la commande Python del o[key].

int PyMapping_HasKey(PyObject *o, PyObject *key)

Renvoie 1 si l'objet de correspondance possède une clef key et 0 sinon. C'est l'équivalent de l'expression Python key in o. Cette fonction ne provoque jamais d'erreur.

Notez que les exceptions qui surviennent pendant l'appel de la méthode __getitem__() seront supprimées. Pour obtenir le rapport d'erreur, utilisez plutôt PyObject_GetItem().

int PyMapping_HasKeyString(PyObject *o, const char *key)

Renvoie 1 si l'objet de correspondance possède une clef key et 0 sinon. C'est l'équivalent de l'expression Python key in o. Cette fonction ne provoque jamais d'erreur.

Notez que les exceptions qui surviennent en créant une chaîne de caractères temporaire pendant l'appel de la méthode __getitem__() seront supprimées. Pour obtenir le rapport d'erreur, utilisez plutôt PyMapping_GetItemString().

PyObject* PyMapping_Keys(PyObject *o)
Return value: New reference.

On success, return a list of the keys in object o. On failure, return NULL.

Modifié dans la version 3.7: Auparavant, la fonction renvoyait une liste ou un n-uplet.

PyObject* PyMapping_Values(PyObject *o)
Return value: New reference.

On success, return a list of the values in object o. On failure, return NULL.

Modifié dans la version 3.7: Auparavant, la fonction renvoyait une liste ou un n-uplet.

PyObject* PyMapping_Items(PyObject *o)
Return value: New reference.

On success, return a list of the items in object o, where each item is a tuple containing a key-value pair. On failure, return NULL.

Modifié dans la version 3.7: Auparavant, la fonction renvoyait une liste ou un n-uplet.