Протокол отображения¶
Смотрите также PyObject_GetItem(), PyObject_SetItem() и PyObject_DelItem().
-
int PyMapping_Check(PyObject *o)¶
- Part of the Стабильный ABI.
Возвращает
1, если объект предоставляет протокол сопоставления или поддерживает нарезку, и0в противном случае. Обратите внимание, что она возвращает1для классов Python с методом__getitem__(), поскольку в общем случае невозможно определить, какой тип ключей поддерживает класс. Эта функция всегда выполняется успешно.
-
Py_ssize_t PyMapping_Size(PyObject *o)¶
-
Py_ssize_t PyMapping_Length(PyObject *o)¶
- Part of the Стабильный ABI.
Возвращает количество ключей в объекте o в случае успеха и
-1в случае неудачи. Это эквивалентно выражению Pythonlen(o).
-
PyObject *PyMapping_GetItemString(PyObject *o, const char *key)¶
- Возвращаемое значение: Новая ссылка. Part of the Стабильный ABI.
Это то же самое, что и
PyObject_GetItem(), но ключ указан как строка const char* в кодировке UTF-8 байт, а не как PyObject*.
-
int PyMapping_SetItemString(PyObject *o, const char *key, PyObject *v)¶
- Part of the Стабильный ABI.
Это то же самое, что и
PyObject_SetItem(), но ключ указан как строка const char* в кодировке UTF-8 байт, а не как PyObject*.
-
int PyMapping_DelItemString(PyObject *o, const char *key)¶
Это то же самое, что и
PyObject_DelItem(), но ключ указан как строка const char* в кодировке UTF-8 байт, а не как PyObject*.
-
int PyMapping_HasKey(PyObject *o, PyObject *key)¶
- Part of the Стабильный ABI.
Возвращает
1, если объект сопоставления имеет ключ key, и0в противном случае. Это эквивалентно выражению Pythonkey in o. Эта функция всегда выполняется успешно.Примечание
Исключения, возникающие при вызове этого метода
__getitem__(), автоматически игнорируются. Для правильной обработки ошибок используйте вместо этогоPyObject_GetItem().
-
int PyMapping_HasKeyString(PyObject *o, const char *key)¶
- Part of the Стабильный ABI.
Это то же самое, что и
PyMapping_HasKey(), но ключ указан как строка const char* в кодировке UTF-8 байт, а не как PyObject*.Примечание
Исключения, возникающие при вызове метода
__getitem__()или при создании временного объектаstr, автоматически игнорируются. Для правильной обработки ошибок используйте вместо этогоPyMapping_GetItemString().
-
PyObject *PyMapping_Keys(PyObject *o)¶
- Возвращаемое значение: Новая ссылка. Part of the Стабильный ABI.
В случае успеха верните список ключей в object o. В случае неудачи верните
NULL.Изменено в версии 3.7: Ранее функция возвращала список или кортеж.
-
PyObject *PyMapping_Values(PyObject *o)¶
- Возвращаемое значение: Новая ссылка. Part of the Стабильный ABI.
В случае успеха верните список значений в object o. В случае неудачи верните
NULL.Изменено в версии 3.7: Ранее функция возвращала список или кортеж.
-
PyObject *PyMapping_Items(PyObject *o)¶
- Возвращаемое значение: Новая ссылка. Part of the Стабильный ABI.
В случае успеха верните список элементов в object o, где каждый элемент представляет собой кортеж, содержащий пару ключ-значение. В случае неудачи верните
NULL.Изменено в версии 3.7: Ранее функция возвращала список или кортеж.