Существует 6 (основных) альтернатив, когда речь идет о связывании C ++ и Python:
- SWIG - как вы уже знаете
- Boost.Python - таков был совет lefticus
- Cython - очень аккуратный синтаксис, близкий к Python
- SIP - не очень распространен, но он есть
- PyBindGen - утверждает, что самый быстрый
- ECS: Python - новый материал
Что касается эффективности, я полагаю, что это будет зависеть от задачи. Если вы немного посмотрите по сети, вы увидите ориентиры. Люди PyBindGen на самом деле очень гордятся своей системой. Возможно, вы захотите посмотреть туда.
В частности, у меня есть опыт работы с Boost.Python - легко изучать простые задачи, немного сложнее делать сложные вещи. Обычно генерирует код, который не является самым быстрым с точки зрения затрат на вызов функции, но работает прекрасно. Этот очень зрелый.