Seite 1 von 1
Nummer der Programmzeile anzeigen
Verfasst: Dienstag 4. Januar 2011, 19:19
von MrNiceTry
Ein gutes neues Jahr an Alle !
Wie kann ich während der Programmausführung die Nummer der aktuell ausgeführte Zeile ermitteln ?
Danke
MrNiceTry
Re: Nummer der Programmzeile anzeigen
Verfasst: Dienstag 4. Januar 2011, 19:35
von str1442
Code: Alles auswählen
$ cat x.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import sys
print sys._getframe(0).f_lineno
$ python !$
python x.py
6
Bevor du das benutzt, sei dir im Klarem darüber, dass der Unterstrich vor getframe() nicht umsonst dort steht. Sowas sollte man offensichtlich in normalem Quelltext nicht benutzen (Tracebacks von Exceptions tragen diese Informationen automatisch, und für die normale Ausführung erscheint es sowieso nicht sehr sinnvoll, diese Information zu akquirieren).
Re: Nummer der Programmzeile anzeigen
Verfasst: Dienstag 4. Januar 2011, 19:36
von BlackJack
Schau Dir mal `sys.settrace()` an. Wofür brauchst Du das denn?
Re: Nummer der Programmzeile anzeigen
Verfasst: Dienstag 4. Januar 2011, 19:44
von MrNiceTry
Ich bin dabei meinen eigenen Programmablauf zu loggen.
Beim Auftreten von unzulässigen Zuständen "meiner Programmlogik" sollte mir die Programmzeile mitgeloggt werden.
Wie gesagt es geht um Logikfehler, nicht um Fehler in Pythoncode.
Re: Nummer der Programmzeile anzeigen
Verfasst: Dienstag 4. Januar 2011, 19:50
von DasIch
Schau dir mal
logging und
Logbook an. Es dürfte eher unwahrscheinlich sein dass du eine bessere Version dieses "Rades" hinbekommst.
Re: Nummer der Programmzeile anzeigen
Verfasst: Freitag 7. Januar 2011, 00:41
von MrNiceTry
Problem ist gelöst.
Danke an Alle.
MrNiceTry