os.system(cmd)

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
scrowface
User
Beiträge: 10
Registriert: Donnerstag 2. März 2006, 15:05

Freitag 3. März 2006, 10:04

Hi,
Ich bin ein absoluter Neuling in Python.
Meine Frage:

Ich habe bereits ein C++ Programm fertig geschrieben und moechte ein Python-script
dafuer haben.
Mit os.system(cmd) kann ich zwar mein C++ programm aufrufen allerdings werden die Ergebnisse direkt auf der Konsole ausgegeben, obwohl ich sie eigentlich in meinem Script fuer andere Zwecke nutzen will(diese Ergebnisse sollten also nur ein zwischenschritt sein)...
habt ihr eine Ahnung wie ich das machen kann?
Benutzeravatar
Rebecca
User
Beiträge: 1662
Registriert: Freitag 3. Februar 2006, 12:28
Wohnort: DN, Heimat: HB
Kontaktdaten:

Freitag 3. März 2006, 10:29

Sieh dir mal das Modul popen2 an.

Z.B.

Code: Alles auswählen

(stdout, stdin, stderr) = popen2.popen3(mein_kommando);
print stdout.read();
Benutzeravatar
jens
Moderator
Beiträge: 8483
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Freitag 3. März 2006, 10:39

Ich würde dafür lieber direkt subprocess nehmen: http://wiki.python.de/Neue_Features#Subprocess

CMS in Python: http://www.pylucid.org
GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
scrowface
User
Beiträge: 10
Registriert: Donnerstag 2. März 2006, 15:05

Freitag 3. März 2006, 10:50

cool,
es funktioniert-natuerlich nachdem ich stdout.read() entsprechend gecastet hatte(ich wollte kein String haben)-.
Vielen Dank
Antworten