ECS:Python (Embedded C++ Scripting with Python) is a simple Python wrapper library designed specifically for C++ developers who wish to add Python scripting to their new / existing C++ projects. ECS:Python allows you to expose objects from a C++ application to an embedded Python interpreter for interactive scripting. ECS:Python is light-weight and easy to use.

To get started all you need to do from your project is #include "EcsPython.h", and link to the EcsPython library. Included with ECS:Python is a demo project (/example) written to assist developers in understanding how to use the API.

ECS:Python requires a Python distribution to be installed on your system. Python can be downloaded from: www.python.org/download

What's new in v3.0:

* Fixed x64 pointer types.
* Added CI and unit tests.
* Cleaned up project structure and code formatting.
* Switch to C++11 std::mutex.

Features

  • Instantiate C++ classes in Python
  • Expose C++ objects to Python
  • Supports Python 2.x.x and 3.x.x
  • Supports 32-bit and 64-bit builds

Project Activity

See All Activity >

License

BSD License

Follow ECS:Python

ECS:Python Web Site

Other Useful Business Software
Migrate to innovate with Red Hat Enterprise Linux on Azure Icon
Migrate to innovate with Red Hat Enterprise Linux on Azure

Streamline your IT modernization journey with a holistic environment running Red Hat Enterprise Linux on Azure.

With Red Hat Enterprise Linux on Azure, businesses can confidently modernize their IT environment, knowing they don’t have to compromise on security, scalability, reliability, and ease of management. Securely accelerate innovation and unlock a competitive edge with enterprise-grade modern cloud infrastructure.
Rate This Project
Login To Rate This Project

User Ratings

★★★★★
★★★★
★★★
★★
1
1
0
0
0
ease 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 5 / 5
features 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 4 / 5
design 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 4 / 5
support 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 4 / 5

User Reviews

  • It's working perfectly in 32bit projects, but not in 64bits projects... I think it has to do with the _Ecs_Expose_Object function: the Py_BuildValue needs an uppercase 'K' to work with unsigned long long values as a 64bit object pointer.
  • I'm not really sure why this project doesn't have more recommendations. I was looking for a lightweight and easy to use way of embedding a python interpreter into my C++ code, and I was about to bite the bullet and pull in boost to my project for boost::python. This was a much easier to manage solution and so far it's working great.
Read more reviews >

Additional Project Details

Operating Systems

Linux, Mac, Windows

Intended Audience

Developers

Programming Language

Python, C++

Related Categories

Python Software Development Software, Python Code Formatters, C++ Software Development Software, C++ Code Formatters

Registered

2012-11-11