Чтобы использовать в программе на Python модуль, написанный (возможно откомпилированный) на C, можно воспользоваться следующими подходами:
- Использование модуля ctypes. 3 Он предоставляет возможность создавать и манипулировать C-совместимыми типами данных в Python, а также вызывать функции в динамических библиотеках. 3 Перед загрузкой библиотеки код на C нужно скомпилировать в разделяемую библиотеку, совместимую с интерпретатором Python. 5
- Использование SWIG. 3 Этот инструмент генерирует обёртки для вызова функций C/C++ из Python. 3 Для использования нужно написать интерфейсный файл для SWIG, затем сгенерировать обёртку с помощью инструмента. 3 После этого можно скомпилировать один из созданных файлов в разделяемую библиотеку и использовать другой в коде на Python. 3
Также, если есть контроль над исходным кодом на C и минимальное умение писать на нём, можно пропустить этап обёртывания и собрать расширение для Python из этого кода на C. 2