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

type.md

86 строк · 4.9 КБ · обычная страница · сырой текст · скачать

1> **Источник:** https://python-all.ru/2.6/c-api/type.html2>3> «Документация Python на русском» – неофициальный перевод официальной документации Python: версии от 2.6 до 3.16, полнотекстовый поиск, английский оригинал рядом с переводом. Эта Markdown-версия страницы предназначена для работы с LLM: вставьте её в ChatGPT, Claude или Cursor.45---67# Объекты типов89**`PyTypeObject`**1011C-структура объектов, используемая для описания встроенных типов.1213**[PyObject](https://python-all.ru/2.6/c-api/structures.html#PyObject)\* `PyType_Type`**1415Это объект типа для объектов типа; это тот же объект, что `type` и `types.TypeType` в слое Python.1617**int `PyType_Check`([PyObject](https://python-all.ru/2.6/c-api/structures.html#PyObject) *\*o*)**1819Возвращает истину, если объект2021*o*2223является объектом типа, включая экземпляры типов, производных от стандартного объекта типа. В остальных случаях возвращает ложь.2425**int `PyType_CheckExact`([PyObject](https://python-all.ru/2.6/c-api/structures.html#PyObject) *\*o*)**2627Возвращает истину, если объект *o* является объектом типа, но не подтипом стандартного объекта типа. В остальных случаях возвращает ложь.2829Новое в версии 2.2.3031**unsigned int `PyType_ClearCache`()**3233Очищает внутренний кеш поиска. Возвращает текущий тег версии.3435Новое в версии 2.6.3637**void `PyType_Modified`([PyTypeObject](https://python-all.ru/2.6/c-api/type.html#PyTypeObject) *\*type*)**3839Аннулирует внутренний кеш поиска для типа и всех его подтипов. Эта функция должна вызываться после любого ручного изменения атрибутов или базовых классов типа.4041Новое в версии 2.6.4243**int `PyType_HasFeature`([PyObject](https://python-all.ru/2.6/c-api/structures.html#PyObject) *\*o*, int *feature*)**4445Возвращает истину, если объект типа4647*o*4849устанавливает признак5051*feature*5253. Признаки типа задаются одноразрядными флагами.5455**int `PyType_IS_GC`([PyObject](https://python-all.ru/2.6/c-api/structures.html#PyObject) *\*o*)**5657Возвращает истину, если объект типа поддерживает детектор циклов; это проверяет флаг типа [`Py_TPFLAGS_HAVE_GC`](https://python-all.ru/2.6/c-api/typeobj.html#Py_TPFLAGS_HAVE_GC).5859Новое в версии 2.0.6061**int `PyType_IsSubtype`([PyTypeObject](https://python-all.ru/2.6/c-api/type.html#PyTypeObject) *\*a*, [PyTypeObject](https://python-all.ru/2.6/c-api/type.html#PyTypeObject) *\*b*)**6263Возвращает истину, если *a* является подтипом *b*.6465Новое в версии 2.2.6667**[PyObject](https://python-all.ru/2.6/c-api/structures.html#PyObject)\* `PyType_GenericAlloc`([PyTypeObject](https://python-all.ru/2.6/c-api/type.html#PyTypeObject) *\*type*, Py\_ssize\_t *nitems*)**6869*Возвращаемое значение: новая ссылка.*7071Новое в версии 2.2.7273Изменено в версии 2.5: Эта функция использовала тип `int` для *nitems*. Это может потребовать изменений в вашем коде для корректной поддержки 64-битных систем.7475**[PyObject](https://python-all.ru/2.6/c-api/structures.html#PyObject)\* `PyType_GenericNew`([PyTypeObject](https://python-all.ru/2.6/c-api/type.html#PyTypeObject) *\*type*, [PyObject](https://python-all.ru/2.6/c-api/structures.html#PyObject) *\*args*, [PyObject](https://python-all.ru/2.6/c-api/structures.html#PyObject) *\*kwds*)**7677*Возвращаемое значение: новая ссылка.*7879Новое в версии 2.2.8081**int `PyType_Ready`([PyTypeObject](https://python-all.ru/2.6/c-api/type.html#PyTypeObject) *\*type*)**8283Завершает инициализацию объекта типа. Должна вызываться для всех объектов типа, чтобы завершить их инициализацию. Эта функция отвечает за добавление наследуемых слотов из базового класса. Возвращает `0` при успехе, или `-1` и устанавливает исключение при ошибке.8485Новое в версии 2.2.86