Страницы

Поиск по вопросам

вторник, 20 ноября 2018 г.

Вызов С++ функции из Python

Есть Python скрипт имеющий путь к файлу, необходимо открыть этот файл в С/С++ функции, провести с ним манипуляции и вернуть результат в Python скрипт.
Прочитал: https://docs.python.org/2/extending/embedding.html, но так и не понял как все это сделать.


Ответ

Здесь очень хороший пример как это сделать github.com/gil9red/SimplePyScripts/tree/master/using_custom_‌​dll
Вот пример для UNIX, на основе указанного выше
test.py
from ctypes import *
libc = CDLL("libmath.so") print(libc.add(1, 2)) print(libc.sub(1, 2))
math.c
int add(int a, int b) { return a + b; }
int sub(int a, int b) { return a - b; }
сборка в библиотеку (shared library)
gcc -shared -o libmath.so -fPIC math.c
Запуск как и всегда
python test.py

Комментариев нет:

Отправить комментарий