Hallo zusammen,
wie kann man es aus c heraus realisieren, das bestimmte werte einer Funktion an ein python prog geliefert werden und dieses dann ausgeführt wird?
Hoffe es gibt eine Lösung!
Vielen dank für die Hilfe
Gruß Alex
c und python
Da gibt es verschiedene Möglichkeiten. Du könnstest zum Beispiel den Python-Interpreter in dein C-Programm einbetten (nicht sonderlich leicht aber sollte zu schaffen sein). Alternativ kannst du auch eine IPC, am besten mit RPC per XML-RPC, SOAP, CORBA usw. machen, was zumindest von Python-Seite recht einfach zu realisieren ist.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
- gerold
- Python-Forum Veteran
- Beiträge: 5554
- Registriert: Samstag 28. Februar 2004, 22:04
- Wohnort: Telfs (Tirol)
- Kontaktdaten:
Re: c und python
Anonymous hat geschrieben: wie kann man es aus c heraus realisieren, das bestimmte werte einer Funktion an ein python prog geliefert werden und dieses dann ausgeführt wird?
Hi Alex!
Am einfachsten sollte die Übergabe der Werte über die Kommandozeile sein.
Aufruf des Programms:
Code: Alles auswählen
python pythonprog.py --wert1="das ist text" --wert2=50 --flag1 --flag2
Wenn es sich um viele Daten handelt, dann kannst du ja auch eine Textdatei erstellen, deren Position wiederum als Parameter an die Kommandozeile übergeben wird. Python kann diese Textdatei auslesen und mit diesen Daten etwas anfangen. Ich persönlich mache so etwas gerne mit Yaml-Dateien. Falls Daten zurück gegeben werden müssen, kann der Pfad zur Rückgabedatei ebenfalls bereits vom C-Programm aus als Kommandozeilenparameter übergeben werden.
mfg
Gerold

http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Hallo zusammen,
erstmal vielen Dank für die super schnellen und interessanten Vorschläge!
Das mit der Komandozeile und der Textdatei hört sich gut an!
Wenn die zwei Dateien (c-prog u. python-prog) aber ständig miteinander kommunizieren müssen, dann muß ich auf CORBA und konsorten umstellen, oder? Es soll nämlich in einer c-Datei die Logik hinterlegt werden, während mit python die Signale an das C-Programm geschickt werden. Wo findet man dazu ein par Quellen?
vielen dank für eure Hilfe
Alex
erstmal vielen Dank für die super schnellen und interessanten Vorschläge!
Das mit der Komandozeile und der Textdatei hört sich gut an!
Wenn die zwei Dateien (c-prog u. python-prog) aber ständig miteinander kommunizieren müssen, dann muß ich auf CORBA und konsorten umstellen, oder? Es soll nämlich in einer c-Datei die Logik hinterlegt werden, während mit python die Signale an das C-Programm geschickt werden. Wo findet man dazu ein par Quellen?
vielen dank für eure Hilfe
Alex
- jens
- Moderator
- Beiträge: 8458
- Registriert: Dienstag 10. August 2004, 09:40
- Wohnort: duisburg
- Kontaktdaten:
Warum nicht eigentlich alles in Python und die Teile, die nur mit C gehen (welche das auch immer sind) als Modul für Python realisieren???
Da hast du viel weniger Probleme mit der Kommunikation zwischen C und Python
Da hast du viel weniger Probleme mit der Kommunikation zwischen C und Python

CMS in Python: http://www.pylucid.org
GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Gast hat geschrieben:Über die Lösung als Modul hab ich schon was gelesen, aber ganz klar ist es mir noch nicht! Gibt es dazu evtl. eine gute Erklärung?
Vieleicht hilft dir ja der folgende Link:
http://www.cl.uni-heidelberg.de/kurs/ss ... ge057.html
mfg
heftic
heftic
Die Standard Python Doku ist da eigentlich nicht schlecht.
Eine sehr verständlich Einführung findet sich auch hier.
Den Code solltest du mit den Distutils übersetzten.
Edit (Leonidas): Zweiten Post wie gewünscht gelöscht.
Eine sehr verständlich Einführung findet sich auch hier.
Den Code solltest du mit den Distutils übersetzten.
Edit (Leonidas): Zweiten Post wie gewünscht gelöscht.
Wer ist online?
Mitglieder in diesem Forum: 0 Mitglieder