Уведомления

Группа в Telegram: @pythonsu

#1 Июнь 30, 2014 13:19:08

ivbasul
Зарегистрирован: 2014-06-30
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Использование кода C в питоне

Всем доброго дня!

Сложилась такая ситуация. Мне для работы нужен алгоритм, уже реализованный на С. Я хотел бы использовать его при работе в Python.
Я не программист, для рабочих нужд научился в необходимой степени использовать Python (хотя многие коллеги работают в Matlab), но вот разбираться с кодом С - проблема. Не мог бы кто-нибудь подсказать, как это сделать проще всего? Какой-то глобальной задачи нет, просто отправить этому алгоритму на С данные и получить от него результат обработки.
В наличии у меня исходник .c и два файле заголовков .h.

Офлайн

#2 Июнь 30, 2014 13:49:27

Shaman
Зарегистрирован: 2013-03-15
Сообщения: 1369
Репутация: +  88  -
Профиль   Отправить e-mail  

Использование кода C в питоне

Приветствую!
Первое что приходит на ум - стандартный модуль ctypes. Нужно будет собрать из ваших исходников динамическую библиотеку и подключить её при помощи обозначенного средства. Так же есть какая-то railgun, которая, якобы, упрощает такую интеграцию.
http://tkf.github.io/railgun/index.html#

Офлайн

#3 Июнь 30, 2014 16:00:58

ivbasul
Зарегистрирован: 2014-06-30
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Использование кода C в питоне

ага, очень хорошо!
а чем бы таким удобным собрать эту динамическую библиотеку из имеющихся исходников?
прямо из питона это как-то можно было бы сделать?

Офлайн

#4 Июнь 30, 2014 17:12:40

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2843
Репутация: +  186  -
Профиль   Отправить e-mail  

Использование кода C в питоне

http://lmgtfy.com/?q=python+%D0%BC%D0%BE%D0%B4%D1%83%D0%BB%D1%8C+%D0%BD%D0%B0+c



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Офлайн

#5 Июнь 30, 2014 22:05:46

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10016
Репутация: +  857  -
Профиль   Отправить e-mail  

Использование кода C в питоне

ivbasul
как это сделать проще всего?

Проще всего собрать программу из сишного кода (с нужным вводом/выводом) и запускать её из питона с помощью subprocess.

Это требует запуска процесса в системе каждый раз. Но для единичных запусков подойдёт.



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version