Документация Python неофициальный перевод

Протокол отображенияMapping Protocol

int PyMapping_Check(PyObject *o)

Возвращает 1, если объект поддерживает протокол отображения, и 0 в противном случае. Эта функция всегда завершается успешно.

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

Возвращает количество ключей в объекте o при успехе и -1 при неудаче. Для объектов, не поддерживающих протокол отображения, это эквивалентно выражению Python len(o).

Изменено в версии 2.5: Эти функции возвращали тип int. Это может потребовать изменений в коде для корректной поддержки 64-битных систем.

int PyMapping_DelItemString(PyObject =o, char *key)

Удаляет отображение для объекта key из объекта o. Возвращает -1 при неудаче. Это эквивалентно оператору Python del o[key].

int PyMapping_DelItem(PyObject *o, PyObject *key)

Удаляет отображение для объекта key из объекта o. Возвращает -1 при неудаче. Это эквивалентно оператору Python del o[key].

int PyMapping_HasKeyString(PyObject =o, char *key)

В случае успеха возвращает 1, если объект отображения содержит ключ key, и 0 в противном случае. Это эквивалентно o[key], возвращающей True при успехе и False при исключении. Эта функция всегда завершается успешно.

int PyMapping_HasKey(PyObject *o, PyObject *key)

Возвращает 1, если объект отображения содержит ключ key, и 0 в противном случае. Это эквивалентно o[key], возвращающей True при успехе и False при исключении. Эта функция всегда завершается успешно.

PyObject* PyMapping_Keys(PyObject *o)
Возвращаемое значение: новая ссылка.

В случае успеха возвращает список ключей объекта o. В случае неудачи возвращает NULL. Это эквивалентно выражению Python o.keys().

PyObject* PyMapping_Values(PyObject *o)
Возвращаемое значение: новая ссылка.

В случае успеха возвращает список значений объекта o. В случае неудачи возвращает NULL. Это эквивалентно выражению Python o.values().

PyObject* PyMapping_Items(PyObject *o)
Возвращаемое значение: новая ссылка.

В случае успеха возвращает список элементов объекта o, где каждый элемент – это кортеж , содержащий пару ключ-значение. В случае неудачи возвращает NULL. Это эквивалентно выражению Python o.items().

PyObject* PyMapping_GetItemString(PyObject *o, char *key)
Возвращаемое значение: новая ссылка.

Возвращает элемент o, соответствующий объекту key, или NULL при неудаче. Это эквивалент выражения Python o[key].

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

Отображает объект key на значение v в объекте o. Возвращает -1 при неудаче. Это эквивалентно оператору Python o[key] = v.