h1

Programmausgabe in Variable speichern Python

Februar 7, 2009

Die Ausgabe von einem Programm oder einem Prozess in einer Variable zu speichern ist in Python gar nicht so leicht, wie man das zuerst erwarten würde. Benutzen sollte man dafür das subprocess Modul, da os.system() nicht nur deprecated ist, sondern auch nicht sehr flexibel. Es gibt jegliche Ausgabe nämlich einfach auf der stdout aus. Besser geht es dagegen mit subprocess.Popen():

1 from subprocess import Popen, PIPE
2
3 output = Popen(„fortune„, stdout=PIPE).communicate()[0]
4 output = Popen([„programm„, „argument„], stdout=PIPE).communicate[0]

Weitere Infos zu subprocess gibt es hier: http://docs.python.org/library/subprocess.html

2 Kommentare

  1. Dankeschön🙂


  2. C:\Python34\python.exe C:/Users/***/PycharmProjects/untitled/test.py
    File „C:/Users/***/PycharmProjects/untitled/test.py“, line 3
    output = Popen(“fortune“, stdout=PIPE).communicate()[0]
    ^
    SyntaxError: invalid character in identifier

    Process finished with exit code 1



Schreibe einen Kommentar

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s

%d Bloggern gefällt das: