Datei kompilieren und Fehler in eine Variable pipen

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
kite

Ich möchte gerne eine .py datei ausführen und wenn diese Fehler enthält, möchte ich diese Fehler die die Python.exe ausgibt in einer Variable in meinem Programm haben :)

weiß einer wie das geht ?
Benutzeravatar
strogon14
User
Beiträge: 58
Registriert: Sonntag 23. Februar 2003, 19:34
Wohnort: Köln
Kontaktdaten:

Was heißt hier ausführen?

Willst Du Sie im Kontext (Namensraum) des aktuellen Skripts ausführen, dann nimm die eingebaute Funktion execfile()

Code: Alles auswählen

import sys
try:
    execfile('foo.py')
except:
    # save traceback into variable
    fehler = sys.exc_info()[2]
Willst Du die .py Datei als ein Skript ausführen (genauso wie jedes andere externe Programm) nimm das Modul commands oder popen2:

Code: Alles auswählen

chout, chin, cherr = popen2.popen3('python foo.py')
chin.close()
fehler = cherr.read()
Diese Beispiel nimmt an, das das Skript foo.py alle Fehler auf dem Standard-Error Kanal ausspuckt.
Antworten