Seite 1 von 1

Hallo zusammen

Verfasst: Freitag 22. Mai 2009, 23:48
von max793
als neuling bei Python finde ich das Forum hier sehr hilfreich. und hoffe, dass ihr mir bei meinem Aufgabe helft.

mich würde es interessieren wie man über Python ein Programm ansteuert und Daten für das Programm einliest und dem Programm sagt was es machen soll.

Um das konkret zu sagen: Ich möchte gerne ein Python programm schreiben, das ein anderes Programm startet. weiteres muss das Python Programm dem auszuführenden Programm eine Datei geben und mit dieser Berechnungen durchführen .

Da ich noch am Anfang stehe bei der umsetzung würde ich nun als erstes mal infomationen brauchen welche befehle hier hilfreich sein würden und ob es schon eine solchen code irgendwo gibt

Danke!!!!! max793

Verfasst: Samstag 23. Mai 2009, 00:43
von ichbinsisyphos
Modul subprocess

Kannst den Namen der Datei für das zu steuernde Programm as Argument übergeben?

Den Befehl übergibts am besten als Liste von strings.
...

import subprocess

...

subprocess.Popen(["programmname", "dateiname"])

...
Wenn du Rückmeldungen vom Programm brauchst, gibts andere Methoden als Popen, die ich allerdings grad nicht im Kopf hab (subprocess.call() hat da z.B. was glaub ich)

Verfasst: Samstag 23. Mai 2009, 08:42
von cofi
ichbinsisyphos hat geschrieben:Wenn du Rückmeldungen vom Programm brauchst, gibts andere Methoden als Popen, die ich allerdings grad nicht im Kopf hab (subprocess.call() hat da z.B. was glaub ich)
Nein. `subprocess.call` wartet bis das Programm ausgeführt ist und kehrt dann ins eigene Programm zurück. `Popen` startet das Programm als eigenen Prozess.
Beispiele - auch für die Kommunikation - gibts hier: http://www.thehazeltree.org/pymotw/subp ... index.html

Verfasst: Samstag 23. Mai 2009, 10:38
von ichbinsisyphos
Ok, ja. stdout/stdin-Kommunikation gibts auch bei Popen.