Найти - Пользователи
Полная версия: Python/C API
Начало » Python для экспертов » Python/C API
1 2
eden
В программу на Си можно вставить код Питона, а вот в код на Питоне можно вставить Си?

Если нет, то есть ли какой-нибудь модуль который дает эту возможность?

Спасибо!
evgenyl
eden
В программу на Си можно вставить код Питона, а вот в код на Питоне можно вставить Си?
Если нет, то есть ли какой-нибудь модуль который дает эту возможность?
Спасибо!
Да легко, например так
http://ru.wikipedia.org/wiki/Swig
или вообще ручками сделать всё
http://www.intuit.ru/department/pl/python/13/2.html
eden
Ага, Спасибо
bw
Pyrex/Cython, PyInline, и, врде как, есть какой-то отщепенец от PyInline.

p.s. Если пишешь на Си, то boost может пригодиться.

..bw
eden
Спасибо
Андрей Светлов
Все правильно написали.
Если есть готовая библиотека с простым C API - ctypes.
Нужно чуть больше - pyrex
Требуется приличный C++ “с классами” - boost.python

SWIG не рекомендую - гадость, ИМХО
Писать на Python C API тоже не рекомендую. Читать - нужно уметь. Писать - слишком много и сложно.
bw
На SWIG, если не ошибаюсь (сейчас лень смотреть) сделаны PyOpenGL, wxPython и прочие порты.
Знать Python/C все же нужно, если браться за Pyrex/Cython, то этот API тебе понадобится (с очень большой вероятностью), пусть по мелочам, но ориентироваться и понимать основу Python/C необходимо.

..bw
eden
Python/C -ещё б доки на русском найти, а то переводить самому нет времени
bw
А чего там переводить. Уроков нет, только справочник. Самая большая проблема - это путаница в учете ссылок.

..bw
Андрей Светлов
Третий PyOpenGL переписан на ctypes.
Про использование SWIG в wxPython цензурными словами отзываться сложно. Муть редкостная. Ребят оправдывает только почтенный возраст проекта - тогда просто не было достойных альтернатив.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB