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

index.md

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

1> **Источник:** https://python-all.ru/3.0/extending/index.html2>3> «Документация Python на русском» – неофициальный перевод официальной документации Python: версии от 2.6 до 3.16, полнотекстовый поиск, английский оригинал рядом с переводом. Эта Markdown-версия страницы предназначена для работы с LLM: вставьте её в ChatGPT, Claude или Cursor.45---67# Расширение и встраивание интерпретатора Python89| Версия: | 3.0 |10| --- | --- |11| Дата: | 14 февраля 2009 |1213В этом документе описывается, как писать модули на C или C++ для расширения интерпретатора Python новыми модулями. Такие модули могут определять новые функции, а также новые типы объектов и их методы. Документ также описывает, как встраивать интерпретатор Python в другое приложение для использования в качестве языка расширения. Наконец, показано, как компилировать и компоновать модули расширения, чтобы их можно было динамически загружать (во время выполнения) в интерпретатор, если базовая операционная система поддерживает эту возможность.1415В этом документе предполагается базовое знание Python. Для неформального введения в язык, см. [*Руководство по Python*](https://python-all.ru/3.0/tutorial/index.html#tutorial-index). [*Справочник по языку Python*](https://python-all.ru/3.0/reference/index.html#reference-index) дает более формальное определение языка. [*Стандартная библиотека Python*](https://python-all.ru/3.0/library/index.html#library-index) документирует существующие типы объектов, функции и модули (как встроенные, так и написанные на Python), которые обеспечивают широкий спектр применения языка.1617За подробным описанием всего Python/C API см. отдельное [*Справочное руководство по Python/C API*](https://python-all.ru/3.0/c-api/index.html#c-api-index).1819- [Расширение Python с помощью C или C++](https://python-all.ru/3.0/extending/extending.html)2021  - [Простой пример](https://python-all.ru/3.0/extending/extending.html#a-simple-example)22  - [Интермеццо: ошибки и исключения](https://python-all.ru/3.0/extending/extending.html#intermezzo-errors-and-exceptions)23  - [Возвращение к примеру](https://python-all.ru/3.0/extending/extending.html#back-to-the-example)24  - [Таблица методов модуля и функция инициализации](https://python-all.ru/3.0/extending/extending.html#the-module-s-method-table-and-initialization-function)25  - [Компиляция и компоновка](https://python-all.ru/3.0/extending/extending.html#compilation-and-linkage)26  - [Вызов функций Python из C](https://python-all.ru/3.0/extending/extending.html#calling-python-functions-from-c)27  - [Извлечение параметров в функциях расширения](https://python-all.ru/3.0/extending/extending.html#extracting-parameters-in-extension-functions)28  - [Именованные параметры для функций расширения](https://python-all.ru/3.0/extending/extending.html#keyword-parameters-for-extension-functions)29  - [Построение произвольных значений](https://python-all.ru/3.0/extending/extending.html#building-arbitrary-values)30  - [Счётчики ссылок](https://python-all.ru/3.0/extending/extending.html#reference-counts)31  - [Написание расширений на C++](https://python-all.ru/3.0/extending/extending.html#writing-extensions-in-c)32  - [Предоставление C API для модуля расширения](https://python-all.ru/3.0/extending/extending.html#providing-a-c-api-for-an-extension-module)33- [Определение новых типов](https://python-all.ru/3.0/extending/newtypes.html)3435  - [Основы](https://python-all.ru/3.0/extending/newtypes.html#the-basics)36  - [Методы типа](https://python-all.ru/3.0/extending/newtypes.html#type-methods)37- [Сборка расширений на C и C++ с помощью distutils](https://python-all.ru/3.0/extending/building.html)3839  - [Распространение модулей расширения](https://python-all.ru/3.0/extending/building.html#distributing-your-extension-modules)40- [Сборка расширений C и C++ в Windows](https://python-all.ru/3.0/extending/windows.html)4142  - [Подход Cookbook](https://python-all.ru/3.0/extending/windows.html#a-cookbook-approach)43  - [Различия между Unix и Windows](https://python-all.ru/3.0/extending/windows.html#differences-between-unix-and-windows)44  - [Использование DLL на практике](https://python-all.ru/3.0/extending/windows.html#using-dlls-in-practice)45- [Встраивание Python в другое приложение](https://python-all.ru/3.0/extending/embedding.html)4647  - [Встраивание очень высокого уровня](https://python-all.ru/3.0/extending/embedding.html#very-high-level-embedding)48  - [За пределами встраивания очень высокого уровня: обзор](https://python-all.ru/3.0/extending/embedding.html#beyond-very-high-level-embedding-an-overview)49  - [Чистое встраивание](https://python-all.ru/3.0/extending/embedding.html#id1)50  - [Расширение встроенного Python](https://python-all.ru/3.0/extending/embedding.html#extending-embedded-python)51  - [Встраивание Python в C++](https://python-all.ru/3.0/extending/embedding.html#embedding-python-in-c)52  - [Требования к компоновке](https://python-all.ru/3.0/extending/embedding.html#linking-requirements)53