ausgabe in fesnter ODER Konsole
Verfasst: Montag 21. Juni 2010, 12:33
Hi,
ich spiele gerade ein wenig mit wxPython.
Ich möchte jetzt für eine Funktion, die während ihrer Abarbeitung jede Menge (Logging-)Output erzeugt, dieser Output entweder in ein Fenster geschrieben wird, wenn das Programm mit Gui gestartet wird, oder in die Konsole, wenn die Funktion ohne Gui aufgerufen wird (z.B. beim testen etc.)
Gibt es dafür ein best practice?
Meine erste Idee sieht so aus:
'tc' ist hier das Textfeld, welches eine 'write'-Methode implementiert. Wird kein Textfeld übergeben, mappe ich halt tc auf eine kleine pseudo-Klasse, die nur diese wirte-Methode hat. So ist es für die Funktion im weiteren Verlauf egal, ob sie in die Gui oder die Konsole ausgibt.
Ist das so "okay", oder gibt es da bessere, "pythonischere", Möglichkeiten und Wege?
Gruß,
r.
ich spiele gerade ein wenig mit wxPython.
Ich möchte jetzt für eine Funktion, die während ihrer Abarbeitung jede Menge (Logging-)Output erzeugt, dieser Output entweder in ein Fenster geschrieben wird, wenn das Programm mit Gui gestartet wird, oder in die Konsole, wenn die Funktion ohne Gui aufgerufen wird (z.B. beim testen etc.)
Gibt es dafür ein best practice?
Meine erste Idee sieht so aus:
Code: Alles auswählen
def test(tc=None):
class inner():
def write(self, msg):
print msg
if tc == None:
tc = inner()
tc.write("blabla")
if __name__ == '__main__':
test()
Ist das so "okay", oder gibt es da bessere, "pythonischere", Möglichkeiten und Wege?
Gruß,
r.