Seite 1 von 1

Zeilennummer einer anweisung

Verfasst: Dienstag 3. April 2018, 12:45
von Zssssss
Guten Tag alle zusammen

Ich suche eine Funktion mit der ich die Zeilennummer in der ein Fehler passiert ist ausgeben kann. :?:

Also sozusagen von der Fehlermeldung (unten), nur die Zeile in der der Fehler passiert, ist in diesem Beispiel wäre dass die eins.

Code: Alles auswählen

Traceback (most recent call last):
  File "Zeilennummer_ausgeben.py", line 1, in <module>
    print(ZEILENNUMMER)
NameError: name 'ZEILENNUMMER' is not defined
Freundliche Grüsse und besten dank Zssssss

Re: Zeilennummer einer anweisung

Verfasst: Dienstag 3. April 2018, 12:57
von __deets__
So ganz verstehe ich deinen Wunsch nicht, du bekommst diese Information doch:

Code: Alles auswählen

Traceback (most recent call last):
  File "/tmp/test.py", line 6, in <module>
    raise Exception()
Exception
Wenn du das programmatisch extrahieren willst, dann waere das traceback-Modul fuer dich von Interesse. Oder einfach sys.exc_info().

Re: Zeilennummer einer anweisung

Verfasst: Dienstag 3. April 2018, 13:27
von Zssssss
Guten Tag __deets__

Ja ich weiss dass ich die zeile zurückbekomme, aber ich möchte die zeile ohne die Fehlermeldung ausgeben oder in eine Datei schreiben können.
Also anstatt die Fehlermeldung (unten), nur die 1.

Code: Alles auswählen

Traceback (most recent call last):
  File "Zeilennummer_ausgeben.py", line 1, in <module>
    print(ZEILENNUMMER)
NameError: name 'ZEILENNUMMER' is not defined
Was das extrahieren angeht ich habe das traceback-Modul nicht gefunden.

Freundliche Grüsse Zssssss

Re: Zeilennummer einer anweisung

Verfasst: Dienstag 3. April 2018, 13:54
von MagBen
Zssssss hat geschrieben:Was das extrahieren angeht ich habe das traceback-Modul nicht gefunden.
https://docs.python.org/2/library/traceback.html
https://docs.python.org/3.6/library/traceback.html

Re: Zeilennummer einer anweisung

Verfasst: Dienstag 3. April 2018, 13:58
von Zssssss
Vielen dank MagBen, ich werde mir das mal anschauen, wenn ich dann trozdem nicht weiterkomme frage ich nochmal. :o