Mappningsprotokoll¶
Se även PyObject_GetItem()
, PyObject_SetItem()
och PyObject_DelItem()
.
-
int PyMapping_Check(PyObject *o)¶
- En del av Stabil ABI.
Returnerar
1
om objektet tillhandahåller mappningsprotokollet eller stöder slicing, och0
annars. Observera att den returnerar1
för Python-klasser med en__getitem__()
-metod, eftersom det i allmänhet är omöjligt att avgöra vilken typ av nycklar som klassen stöder. Denna funktion lyckas alltid.
-
Py_ssize_t PyMapping_Size(PyObject *o)¶
-
Py_ssize_t PyMapping_Length(PyObject *o)¶
- En del av Stabil ABI.
Returnerar antalet nycklar i objektet o om det lyckas, och
-1
om det misslyckas. Detta är likvärdigt med Python-uttrycketlen(o)
.
-
PyObject *PyMapping_GetItemString(PyObject *o, const char *key)¶
- Returnera värde: Ny referens. En del av Stabil ABI.
Detta är samma sak som
PyObject_GetItem()
, men key anges som en const char* UTF-8-kodad bytessträng, i stället för en PyObject*.
-
int PyMapping_GetOptionalItem(PyObject *obj, PyObject *key, PyObject **result)¶
- En del av Stabil ABI sedan version 3.13.
Variant av
PyObject_GetItem()
som inte ger upphov tillKeyError
om nyckeln inte hittas.Om nyckeln hittas returneras
1
och *result sätts till en ny strong reference till motsvarande värde. Om nyckeln inte hittas, returneras0
och *result sätts tillNULL
;KeyError
tystas. Om ett annat fel änKeyError
uppstår, returneras-1
och *result sätts tillNULL
.Tillagd i version 3.13.
-
int PyMapping_GetOptionalItemString(PyObject *obj, const char *key, PyObject **result)¶
- En del av Stabil ABI sedan version 3.13.
Detta är samma sak som
PyMapping_GetOptionalItem()
, men key anges som en const char* UTF-8-kodad bytessträng, i stället för en PyObject*.Tillagd i version 3.13.
-
int PyMapping_SetItemString(PyObject *o, const char *key, PyObject *v)¶
- En del av Stabil ABI.
Detta är samma sak som
PyObject_SetItem()
, men key anges som en const char* UTF-8-kodad bytessträng, i stället för en PyObject*.
-
int PyMapping_DelItem(PyObject *o, PyObject *key)¶
Detta är ett alias för
PyObject_DelItem()
.
-
int PyMapping_DelItemString(PyObject *o, const char *key)¶
Detta är samma sak som
PyObject_DelItem()
, men key anges som en const char* UTF-8-kodad bytessträng, i stället för en PyObject*.
-
int PyMapping_HasKeyWithError(PyObject *o, PyObject *key)¶
- En del av Stabil ABI sedan version 3.13.
Returnerar
1
om mappningsobjektet har nyckeln key och0
annars. Detta är likvärdigt med Python-uttrycketkey in o
. Vid misslyckande returneras-1
.Tillagd i version 3.13.
-
int PyMapping_HasKeyStringWithError(PyObject *o, const char *key)¶
- En del av Stabil ABI sedan version 3.13.
Detta är samma sak som
PyMapping_HasKeyWithError()
, men key anges som en const char* UTF-8-kodad bytessträng, i stället för en PyObject*.Tillagd i version 3.13.
-
int PyMapping_HasKey(PyObject *o, PyObject *key)¶
- En del av Stabil ABI.
Returnerar
1
om mappningsobjektet har nyckeln key och0
annars. Detta motsvarar Python-uttrycketkey in o
. Denna funktion lyckas alltid.Anteckning
Undantag som uppstår när detta anropar
__getitem__()
-metoden ignoreras i tysthet. För korrekt felhantering, användPyMapping_HasKeyWithError()
,PyMapping_GetOptionalItem()
ellerPyObject_GetItem()
istället.
-
int PyMapping_HasKeyString(PyObject *o, const char *key)¶
- En del av Stabil ABI.
Detta är samma sak som
PyMapping_HasKey()
, men key anges som en const char* UTF-8-kodad bytessträng, i stället för ett PyObject*.Anteckning
Undantag som inträffar när detta anropar
__getitem__()
-metoden eller när det tillfälligastr
-objektet skapas ignoreras i tysthet. För korrekt felhantering, användPyMapping_HasKeyStringWithError()
,PyMapping_GetOptionalItemString()
ellerPyMapping_GetItemString()
istället.
-
PyObject *PyMapping_Keys(PyObject *o)¶
- Returnera värde: Ny referens. En del av Stabil ABI.
Vid framgång returneras en lista över nycklarna i objektet o. Vid misslyckande returneras
NULL
.Ändrad i version 3.7: Tidigare returnerade funktionen en lista eller en tupel.
-
PyObject *PyMapping_Values(PyObject *o)¶
- Returnera värde: Ny referens. En del av Stabil ABI.
Vid framgång returneras en lista över värdena i objektet o. Vid misslyckande returneras
NULL
.Ändrad i version 3.7: Tidigare returnerade funktionen en lista eller en tupel.
-
PyObject *PyMapping_Items(PyObject *o)¶
- Returnera värde: Ny referens. En del av Stabil ABI.
Vid framgång returneras en lista över objekten i objektet o, där varje objekt är en tupel som innehåller ett nyckel-värdepar. Vid misslyckande returneras
NULL
.Ändrad i version 3.7: Tidigare returnerade funktionen en lista eller en tupel.