Автостопом по Python.

C Foreign Function Interface.

Пакет CFFI (https://cffi.readthedocs.org/en/latest/) предоставляет простой механизм для взаимодействия с кодом, написанным на C, из Python и PyPy. CFFI рекомендуется использовать с PyPy (http://doc.pypy.org/en/latest/extending.html) для наилучшей совместимости между CPython и PyPy. Он поддерживает два режима: встроенный режим совместимости для бинарных интерфейсов приложения (application binary interface, ABI) (смотрите следующий пример кода) позволяет динамически загружать и запускать функции из исполняемых модулей (по сути, предоставляет такую же функциональность, как LoadLibrary или dlopen), а также режим API, который позволяет выполнять сборку модулей расширения C[103].

Установите его с помощью pip:

$ pip install cffi.

Рассмотрим пример взаимодействия ABI:

Автостопом по Python.

Автостопом по Python.Строка может быть получена из объявления функции, расположенного в заголовочном файле С.

Автостопом по Python.Открываем общую библиотеку (*.DLL или *.so).

Автостопом по Python.Теперь мы можем относиться к clib как к модулю Python и просто вызываем функции, которые определили с помощью точечной нотации.