Ermitteln des Dateinamens und einer Zeilennummer in Python
Bei der Arbeit an realen Anwendungen oder Nebenprojekten müssen wir häufig Zeilennummern und Dateinamen zu Debugging-Zwecken abrufen. Im Allgemeinen geschieht dies, um zu verstehen, welcher Code wann ausgeführt wird, oder um den Steuerungsfluss einer Anwendung zu analysieren. In diesem Artikel erfahren wir, wie Sie mit Python eine Zeilennummer und den Dateinamen des Python-Skripts erhalten.
Ermitteln des Dateinamens und einer Zeilennummer in Python
Um den Dateinamen und eine Zeilennummer aus dem ausführenden Python-Skript zu erhalten, können wir das inspect
-Modul Python verwenden. Das Modul inspect
enthält mehrere Dienstprogramme zum Abrufen von Informationen über Objekte, Klassen, Methoden, Funktionen, Frame-Objekte und Code-Objekte. Diese Bibliothek hat eine getframeinfo()
-Methode, die Informationen über einen Frame oder ein Traceback-Objekt abruft. Diese Methode akzeptiert ein frame
-Argument, über das sie Details abruft. Die Methode currentFrame()
gibt das Frame-Objekt für den Stack-Frame des Aufrufers zurück. Wir können diese Dienstprogramme für unseren Anwendungsfall verwenden. Sehen Sie sich den folgenden Python-Code an, um die Verwendung zu verstehen.
from inspect import currentframe, getframeinfo
frame = getframeinfo(currentframe())
filename = frame.filename
line = frame.lineno
print("Filename:", filename)
print("Line Number:", line)
Ausgabe:
Filename: full/path/to/file/main.py
Line Number: 3
Wie wir sehen können, gibt das Attribut filename
den vollständigen Pfad zur Python-Datei zurück. In meinem Fall war der Name der Python-Datei main.py
; Daher wird in der Ausgabe main.py
angezeigt. Und das Attribut lineno
gibt die Zeilennummer zurück, bei der diese frame = getframeinfo(currentframe())
-Anweisung ausgeführt wurde. Die erwähnte Anweisung wurde in Zeile 3
ausgeführt; daher hat die Ausgabe eine 3
nach dem Label Line Number
.
Verwandter Artikel - Python File
- So erhalten Sie alle Dateien eines Verzeichnisses
- Wie man in Python Text an eine Datei anhängt
- Wie man prüft, ob eine Datei in Python existiert
- Wie man Dateien mit einer bestimmten Endung nur in Python findet
- Wie man bestimmte Zeilen aus einer Datei in Python liest
- Dateiberechtigungen in Python ändern