NumPy C-API
NumPy предоставляет C-API, позволяющий пользователям расширять систему и получать доступ к объекту массива для использования в других процедурах. Лучший способ по-настоящему понять C-API — прочитать исходный код. Однако, если вы не знакомы с исходным кодом (на C), это может показаться сложной задачей вначале. Будьте уверены, что с практикой задача станет проще, и вас может удивить, насколько простым может быть понимание кода на C. Даже если вы не считаете, что можете написать код на C с нуля, гораздо проще понять и изменить уже написанный исходный код, чем создать его de novo.
Расширения Python особенно просты для понимания, потому что у них все имеют очень похожую структуру. Признаем, NumPy — это не тривиальное расширение Python, и для его понимания может потребоваться немного больше изучения. Это особенно верно из-за методов генерации кода, которые упрощают обслуживание очень похожего кода, но могут сделать код несколько менее читабельным для начинающих. Тем не менее, при некоторой настойчивости код можно понять. Я надеюсь, что это руководство по C-API поможет в процессе знакомства с работой на уровне компиляции, которую можно выполнить с NumPy, чтобы выжать из кода последнюю необходимую скорость.
- Типы Python и C-структуры
- Конфигурация системы
- API типов данных
-
API массивов
- Структура массива и доступ к данным
- Создание массивов
- Работа с типами
- Флаги массива
- Альтернативный API методов массива
- Функции
- Дополнительные данные с семантикой объекта
- Итераторы массивов
- Распространение (многоитераторы)
- Итератор окрестности
- Массированные скаляры
- Дескрипторы типов данных
- Утилиты преобразования
- Разное
- API итераторов массивов
- API UFunc
- API обобщенных универсальных функций
- Ядро NumPy библиотек
- Устаревшие API C
© 2005–2022 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.21/reference/c-api/index.html