Protocole de correspondance¶
Voir aussi PyObject_GetItem(), PyObject_SetItem() et PyObject_DelItem().
-
int
PyMapping_Check(PyObject *o)¶ Renvoie
1si l'objet prend en charge le protocole de correspondance ou le découpage en tranches et0sinon. Notez qu'elle renvoie1pour les classes Python avec une méthode__getitem__()puisque, dans le cas général, il est impossible de déterminer quel type de clef est pris en charge. Cette fonction ne provoque jamais d'erreur.
-
Py_ssize_t
PyMapping_Size(PyObject *o)¶ -
Py_ssize_t
PyMapping_Length(PyObject *o)¶ Renvoie le nombre de clefs dans l'objet o et
-1en cas d'échec. C'est l'équivalent de l'expression Pythonlen(o).
-
PyObject*
PyMapping_GetItemString(PyObject *o, const char *key)¶ - Return value: New reference.
Renvoie les éléments de o qui correspondent à la chaîne key ou NULL en cas d'échec. C'est l'équivalent de l'expression Python
o[key]. Voir aussiPyObject_GetItem().
-
int
PyMapping_SetItemString(PyObject *o, const char *key, PyObject *v)¶ Fait correspondre la chaîne key à la valeur v dans l'objet o. Renvoie
-1en cas d'échec. C'est l'équivalent de la commande Pythono[key] = v. Voir aussiPyObject_SetItem(). Cette fonction ne vole pas de référence à v.
-
int
PyMapping_DelItem(PyObject *o, PyObject *key)¶ Supprime la correspondance associée à l'objet key dans l'objet o. Renvoie
-1en cas d'échec. C'est l'équivalent de la commande Pythondel o[key]. C'est un alias pourPyObject_DelItem().
-
int
PyMapping_DelItemString(PyObject *o, const char *key)¶ Supprime la correspondance associée à la chaîne key dans l'objet o. Renvoie
-1en cas d'échec. C'est l'équivalent de la commande Pythondel o[key].
-
int
PyMapping_HasKey(PyObject *o, PyObject *key)¶ Renvoie
1si l'objet de correspondance possède une clef key et0sinon. C'est l'équivalent de l'expression Pythonkey 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ôtPyObject_GetItem().
-
int
PyMapping_HasKeyString(PyObject *o, const char *key)¶ Renvoie
1si l'objet de correspondance possède une clef key et0sinon. C'est l'équivalent de l'expression Pythonkey 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ôtPyMapping_GetItemString().
-
PyObject*
PyMapping_Keys(PyObject *o)¶ - Return value: New reference.
Renvoie la liste des clefs dans l'objet o. En cas d'échec, renvoie NULL.
Modifié dans la version 3.7: Auparavant, la fonction renvoyait une liste ou un n-uplet.