Seite 1 von 1
Exception in einem Script abfangen
Verfasst: Mittwoch 16. Juli 2014, 20:05
von tomtombusiness
Hi Leute
Ich hab folgende Frage kann man wenn man ein Pythonscript hat was aus mehreren py Dateien besteht alle Exceptions irgendwie in einer weiteren Py Datei abfangen? also das man nicht in jedem Script die Exceptions abfangen muss?
Re: Exception in einem Script abfangen
Verfasst: Mittwoch 16. Juli 2014, 20:26
von Sirius3
@tomtombusiness: Die Frage ist ein bißchen seltsam. Exceptions fängt man immer irgendwo innerhalb der Aufrufhierarchie ab, und zwar dort, wo man sie am sinnvollsten behandeln kann. Kannst Du Dein Problem konkreter beschreiben?
Re: Exception in einem Script abfangen
Verfasst: Mittwoch 16. Juli 2014, 20:31
von tomtombusiness
Ich hab zb 15 Phytonscripte die alle irgendwie miteinander zusammenarbeiten aber ich bin zu faul überall die exceptions hinzuschriben deswegen dachte ich ich kann eine weitere Scriptdatei machen und dort alle exceptions behandeln und brauche sie nur einmal zu schreiben statt 15 mal
Re: Exception in einem Script abfangen
Verfasst: Mittwoch 16. Juli 2014, 20:49
von Sirius3
@tomtombusiness: natürlich kannst Du gemeinsam genutzte Funktionalität in ein Modul auslagern, aber das sind dann ganze Funktionen und nicht nur die Exceptions.
Re: Exception in einem Script abfangen
Verfasst: Mittwoch 16. Juli 2014, 20:54
von BlackJack
@tomtombusiness: Ich verstehe es immer noch nicht. Du kannst Du sicher nicht alle Ausnahmen gleich behandeln. Wie man eine konkrete Ausnahme behandelt hängt ja nicht nur vom Typ ab, sondern auch vom Code bei dem diese Ausnahme potentiell ausgelöst werden kann. Also müsstest Du dann in *einem* Modul das schreiben was Du sonst in den anderen Modulen geschrieben hättest. Nur dass es dann nicht mehr dort stehen würde wo man nachvollziehen kann was passiert. Und es bleibt die gleiche Arbeit. Man hätte also nichts gewonnen.
Edit: Was zum Henker ist ”Virsual Basic”?

Re: Exception in einem Script abfangen
Verfasst: Mittwoch 16. Juli 2014, 21:12
von tomtombusiness
ja des meine ich ja net wie gesagt ich will arbeit sparen und jetzt nicht alle exceptions in eine datei verlinken sondern die anderen dateien nicht anrühren und die exceptions in einer datei abfangen ohne was in die andere geschrieben zu haben
Re: Exception in einem Script abfangen
Verfasst: Mittwoch 16. Juli 2014, 21:14
von tomtombusiness
Virsual Basic ist ne Programmiersprache aus Microsoft. Sehr sehr einfach und sehr schön aufgebaut. Ist empfehlenswert wenn man einfache anwendungen für Windows programmieren will
Re: Exception in einem Script abfangen
Verfasst: Mittwoch 16. Juli 2014, 21:17
von EyDu
tomtombusiness hat geschrieben:ja des meine ich ja net wie gesagt ich will arbeit sparen und jetzt nicht alle exceptions in eine datei verlinken sondern die anderen dateien nicht anrühren und die exceptions in einer datei abfangen ohne was in die andere geschrieben zu haben
Das ist der falsche Weg. Wie willst du denn Exceptions sinnvoll aus einem anderen Modul behandeln? Dann solltest du es besser sein lassen.
tomtombusiness hat geschrieben:Virsual Basic ist ne Programmiersprache aus Microsoft. Sehr sehr einfach und sehr schön aufgebaut. Ist empfehlenswert wenn man einfache anwendungen für Windows programmieren will
Hmm, und du kannst das beurteilen obwohl du nicht den Namen der Sprache korrekt schreiben kannst ...

Re: Exception in einem Script abfangen
Verfasst: Mittwoch 16. Juli 2014, 21:20
von karolus
tomtombusiness hat geschrieben:Virsual Basic ist ne Programmiersprache aus Microsoft. Sehr sehr einfach und sehr schön aufgebaut. Ist empfehlenswert wenn man einfache anwendungen für Windows programmieren will
Echt ?
Re: Exception in einem Script abfangen
Verfasst: Mittwoch 16. Juli 2014, 21:24
von /me
tomtombusiness hat geschrieben:Virsual Basic ist ne Programmiersprache aus Microsoft. Sehr sehr einfach und sehr schön aufgebaut.
Die Variante für .NET vielleicht, aber dann kann man auch gleich C# nehmen. Das klassische VB ist ein Krampf hoch drei.
Noch mal zu deinem Exception-Problem. Du kannst Ausnahmen überall in der Aufrufhierarchie abfangen. Ich bezweifle allerdings, dass auf oberster Ebene noch eine sinnvolle kontextsensitive Fehlerbehandlung möglich ist.
Re: Exception in einem Script abfangen
Verfasst: Mittwoch 16. Juli 2014, 21:36
von tomtombusiness
Tippfehler Passieren mal du blödman
naja jedenfalls hab ich des jetzt so verstanden das es zwar möglich ist die Exceptions in einem Abzuufangen aber sich nicht wirklich lohnt daher mansche Fehler sich nicht durch die Oberste Ebene Abfangen lassen zb bei Threads
Ich danke euch allen

Re: Exception in einem Script abfangen
Verfasst: Mittwoch 16. Juli 2014, 21:40
von /me
tomtombusiness hat geschrieben:naja jedenfalls hab ich des jetzt so verstanden das es zwar möglich ist die Exceptions in einem Abzuufangen aber sich nicht wirklich lohnt daher mansche Fehler sich nicht durch die Oberste Ebene Abfangen lassen zb bei Threads

Dem wäre wohl nichts hinzuzufügen.
Re: Exception in einem Script abfangen
Verfasst: Mittwoch 16. Juli 2014, 21:54
von BlackJack
@tomtombusiness: Tippfehler passieren. Rechtschreibprüfungen existieren. Klar passieren mal Rechtschreibfehler, aber Dir passieren sie echt *sehr* häufig. Gerade bei so Sachen wie Webseiten, bei Texten die lange existieren, oder bei Signaturen, beides auch eine Art Aushängeschild, sollte man vielleicht ein wenig sorgfältiger sein.
Und Du hast immer noch nicht verraten wie das technisch aussehen soll Ausnahmen in einem Extra-Modul *sinnvoll* zu behandeln. Was sollte denn in diesem magischen Modul passieren?
Re: Exception in einem Script abfangen
Verfasst: Donnerstag 17. Juli 2014, 00:30
von Leonidas
BlackJack hat geschrieben:Was sollte denn in diesem magischen Modul passieren?
Dumme Frage. On Error Resume Next.

Re: Exception in einem Script abfangen
Verfasst: Donnerstag 17. Juli 2014, 00:32
von snafu
BlackJack hat geschrieben:Was zum Henker ist ”Virsual Basic”?

Der Bruder von Phython.

Re: Exception in einem Script abfangen
Verfasst: Donnerstag 17. Juli 2014, 09:03
von EyDu
tomtombusiness hat geschrieben:Tippfehler Passieren mal du blödman

Der selbe Tippfehler an zwei Stellen bei einem Eigennamen. Unwahrscheinlich. Aber egal. Versuche bei deinem nächsten Programm die Exceptions dort zu behandeln, wo du sie auch sinnvoll behandeln kannst. Wenn du eine Exceptio nicht behandeln kannst, dann lasse es einfach. Dann stürzt dein Programm wenigstens ab, du bekommst eine ordentliche Fehlermeldung und arbeitest nicht versehentlich in einem ungültigen Programmzustand weiter.
Re: Exception in einem Script abfangen
Verfasst: Donnerstag 17. Juli 2014, 14:58
von MagBen
tomtombusiness hat geschrieben:naja jedenfalls hab ich des jetzt so verstanden das es zwar möglich ist die Exceptions in einem Abzuufangen aber sich nicht wirklich lohnt daher mansche Fehler sich nicht durch die Oberste Ebene Abfangen lassen zb bei Threads
Es gibt da schon eine Möglichkeit, man kann einen eigenen Default-Exception-Handler definieren und diesen sys.excepthook zuweisen.
Re: Exception in einem Script abfangen
Verfasst: Donnerstag 17. Juli 2014, 15:27
von snafu
Nur nochmal zum Verständnis: Gefragt ist also nach einer Möglichkeit, auf der höchstmöglichen Ebene des Programms jegliche Exceptions abzufangen und diese dann komplett gleich zu behandeln (z.B. nur den Fehlertext auf der Konsole ausgeben)?
Re: Exception in einem Script abfangen
Verfasst: Donnerstag 17. Juli 2014, 15:29
von snafu
MagBen hat geschrieben:tomtombusiness hat geschrieben:naja jedenfalls hab ich des jetzt so verstanden das es zwar möglich ist die Exceptions in einem Abzuufangen aber sich nicht wirklich lohnt daher mansche Fehler sich nicht durch die Oberste Ebene Abfangen lassen zb bei Threads
Es gibt da schon eine Möglichkeit, man kann einen eigenen Default-Exception-Handler definieren und diesen sys.excepthook zuweisen.
Es geht auch auf anderen Wegen. Der Tenor der Antwortenden hier im Thread war auch weniger, dass es *nicht* geht, sondern es ging mehr um die Frage nach der Sinnhaftigkeit eines solchen Vorgehens. Mitunter kann es nötig sein, so vorzugehen, aber meistens gibt es andere Möglichkeiten, die besser sind. Solange der Threadersteller sich aber zu den Hintergründen seiner Frage ausschweigt, lässt sich das natürlich schlecht beurteilen.
Re: Exception in einem Script abfangen
Verfasst: Donnerstag 17. Juli 2014, 18:20
von BlackJack
Ich fürchte Leonidas hat Recht mit seiner Vermutung, und das geht $GOTT seit Dank nicht.