Spec-Zone.ru › NumPy 1.19

NumPy C-API

NumPy предоставляет C-API, чтобы пользователи могли расширять систему и получать доступ к объекту массива для использования в других процедурах. Лучший способ по-настоящему понять C-API — это прочитать исходный код. Однако, если вы не знакомы с исходным кодом на языке C, это может показаться сложной задачей с первого взгляда. Будьте уверены, что с практикой задача становится легче, и вы можете удивиться, насколько простым может быть понимание кода на C. Даже если вы не думаете, что можете написать код на C с нуля, гораздо проще понять и изменить уже написанный исходный код, чем создать его с нуля.

Расширения для Python особенно просты в понимании, поскольку они все имеют очень похожую структуру. Надо признать, что NumPy — это не тривиальное расширение для Python, и для его понимания может потребоваться немного больше внимательного изучения. Это особенно верно из-за методов генерации кода, которые упрощают поддержку очень похожего кода, но могут сделать его немного менее читаемым для начинающих. Тем не менее, с небольшим упорством код можно сделать понятным. Надеюсь, это руководство по C-API поможет в процессе освоения работы на уровне компиляции с NumPy, чтобы выжать из своего кода последнюю каплю необходимой скорости.

  • Типы Python и C-структуры
    • Определенные новые типы Python
    • Другие C-структуры
  • Конфигурация системы
    • Размеры типов данных
    • Информация о платформе
    • Директивы компилятора
    • Обработка прерываний
  • API типов данных
    • Перечисленные типы
    • Определения
    • Имена типов C
    • Форматирование printf
  • API массивов
    • Структура массива и доступ к данным
    • Создание массивов
    • Работа с типами
    • Флаги массивов
    • Альтернативный API методов массива
    • Функции
    • Вспомогательные данные с семантикой объектов
    • Итераторы массивов
    • Распространение (многочисленные итераторы)
    • Итератор окрестностей
    • Массивно-скалярные
    • Дескрипторы типов данных
    • Утилиты преобразования
    • Разное
  • API итераторов массивов
    • Итератор массива
    • Пример простой итерации
    • Пример простой многократной итерации
    • Типы данных итератора
    • Создание и уничтожение
    • Функции для итерации
    • Преобразование из предыдущих итераторов NumPy
  • API UFunc
    • Константы
    • Макросы
    • Функции
    • Общие функции
    • Импорт API
  • API обобщенных универсальных функций
    • Определения
    • Подробности подписи
    • C-API для реализации элементарных функций
  • Основные библиотеки NumPy
    • Основная математическая библиотека NumPy
  • Устаревшие функции C API
    • Обзор
    • Механизм устаревания NPY_NO_DEPRECATED_API

© 2005–2020 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.19/reference/c-api/index.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API