Wie für den Austausch von Daten zwischen Python und C++
Ich soll ein Programm schreiben, in Python, das liest 2 zahlen (entweder aus einer text-Datei oder Benutzereingabe) - Aufruf einer C++ - Funktion nimmt 2 Argumente (die 2 zahlen) addiert Sie und gibt das Ergebnis an das Python-Programm. Ich habe es schon geschafft, dies zu tun, verwenden Sie einen text-Datei (speichern der zahlen von python gibt und dann den Aufruf der Datei in den C++ - Programm). Aber ich will es tun, direkt, statt den Umweg über eine text-Datei als medium. Ich möchte in der Lage sein, um die Funktion aufzurufen, und senden Sie die Argumente direkt, anstatt es zu Lesen, dass Sie aus einer text-Datei, und ich möchte, um die Ausgabe wieder in die ursprüngliche python-code.
Irgendwelche Ideen, wie es weiter gehen, da ich ziemlich neu bin in diesem Bereich?
- Sie können die Verwendung einer pipe zur Kommunikation mit dem externen Programm.
- Python Dokumente, wie dies zu tun.
- SWIG (swig.org/tutorial.html) ermöglicht die einfache Anbindung von C/C++ - code an Python.
- Also, was ist der Unterschied in der Verwendung von SWIG, oder ein python-wrapper oder Steckdosen/Leitungen etc?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn man zwei verschiedene Programme, die Sie verwenden müssen Technologien für inter-Prozess-Kommunikation (pipes, sockets, Signale, usw.).
Wenn Sie möchten, integrieren, C++ - code, um ein python-Programm, können Sie Boost.Python oder dieses Dokument.
Cython unterstützt C++ und seit version 0.13.
Etwas lesestoff:
Mithilfe von C++ in Cython
Wrapping C++ - Klassen mit Cython
Selbstversorger-Beispiel (wahrscheinlich sehr nah an, was Sie zu erreichen versuchen)
Ein sehr mächtiges Werkzeug für die Integration von Python und C++ aufgerufen wird sip und es ist das Instrument, das die Qt-binding PyQt und basiert auf.
Können Sie Funktionen aufrufen und auch ansehen C++ Klassen in Python direkt (einschließlich der Unterstützung für die Ableitung in Python eine C++ - Klasse).
Code zu senden argument von c++ zu python
Python-code (speichern Sie es als abc.py)
Mehr Lesen - (http://www.cyberciti.biz/faq/python-command-line-arguments-argv-example/)