So verwenden Sie PDB, den Python -Debugger

So verwenden Sie PDB, den Python -Debugger
„Ein Debugger in seiner einfachsten Form ist ein Tool, mit dem Benutzer das Programm zu einem bestimmten Zeitpunkt laden und die Attribute analysieren, Stack aufrufen und alles andere beobachten möchten, implizite Konfigurationen erstellen und die ursprüngliche Programmlinie durchgehen möchten nach Linie. Wenn die Benutzer Python verwenden, kann der Code, der in der Eingabeaufforderung zusammengestellt wird.

Das PDB -Paket von Python erleichtert das Debuggen. Es ist ein eingebauter Debugger, der mit der Python Standard Library assoziiert ist. Es wird ausdrücklich als die Klassen-PDB bezeichnet, die die CMD-Pakete (Support for Line Oriented Command Processors) und BDB (Basic Debugger Operations) effektiv verwendet. Wenn wir keinen Zugriff auf einen grafischen Benutzeroberflächen-basierten Debugger haben, besteht der Hauptvorteil der Verwendung des PDB darin, dass er nur nur in der Befehlszeile ausgeführt wird und auch zum Debuggen der Programme auf Cloud-Computern verwendet werden kann.

Erstellen von Haltepunkten, das Treten des Skripts, das Präsentieren der Konfigurationsdateien sowie das Beobachten von Stapelspuren sind alles Funktionen, die PDB bietet.

Wir müssen nur die integrierten PDB- und set_trace () -Anweisungen eingeben, um mit dem Debuggen des Codes zu beginnen. Führen Sie das Programm normal aus, und der von uns angegebene Breakpoint kann dazu führen, dass die Ausführung endet. Daher ist es äußerst schwierig, vor der Ausführung der Set Trace () -Funktion einen Haltepunkt auf dem Block festzulegen. Breakpoint (), eine eingebaute Methode in Python 3.7 und nachfolgende Versionen führen ähnliche Funktionen aus.

Dieser Beitrag wird übergehen, wie man den Python -Debugger oder PDB nutzt.”

Beispiel Nr. 1

In diesem Beispiel werden wir zwei Zahlen zusammen hinzufügen. Der Code findet die von der Funktion input () zurückgegebenen Zeichenfolgen an, anstatt die eingegebenen Werte hinzuzufügen.

PDB importieren
Def Addition (x, y):
Ans = x + y
Rückkehr Ans
PDB.set_trace ()
l = Eingabe ("Bitte geben Sie die 1 einst Wert : ")
M = Eingabe ("Bitte geben Sie die 2 einnd Wert : ")
S = Addition (l, m)
Druck (en)

Wir werden die PDB -Header -Datei zu Beginn des Codes einbeziehen. Der eingebaute Debugger für Python ist als PDB bekannt. Es bietet alle Debugger -Funktionen, die wir benötigen. Dann werden wir die Addition () -Methode definieren. Wir bieten zwei verschiedene Variablen als Parameter. Der folgende Schritt beinhaltet das Deklarieren einer Variablen mit dem Namen „ANS).”

Hier fügen wir die Werte dieser Variablen hinzu, die wir als Argumente der Addition () -Funktion verabschieden. Diese Methode gibt die Antwort zurück. Rufen wir die Methode set_trace () auf. Diese Funktion ist mit der PDB -Bibliothek verbunden. Wir verwenden die Input () -Methode zweimal; Der erste wird verwendet, um die Zeile auf dem Bildschirm zu drucken. „Bitte geben Sie die 1 einst Wert". Wenn der Benutzer diese Meldung auf dem Bildschirm sieht, geben er daher den ersten Wert ein. Eine Variable mit dem Namen "L" kann verwendet werden, um den Wert zu speichern.

In ähnlicher Weise zeigt die zweite input () -Methode den Text „Bitte geben Sie die 2 einnd Wert". Die Variable „M“ enthält diesen Wert. Es wird jetzt als Addition () -Funktion bezeichnet. Diese Funktion enthält zwei Parameter. Am Ende wenden wir die Print () -Methode an, um den resultierenden Wert anzuzeigen.

Der relative Weg zum Programm, die Linie, in der sich die Break -Anweisung befindet, und das Paket sind alle im Ergebnis angegeben. Im Allgemeinen zeigt es an, dass der Modultyp des Systems einen Haltepunkt erreicht hat. Wenn die Break -Anweisung innerhalb des Skripts hinzugefügt wird, kann ihr Wert innerhalb des Werts stattfinden . Der Block des Codes, in dem die Verarbeitung unterbrochen wird, wird in der Ausgabe angezeigt.

Beispiel Nr. 2

Der Quellcode wird durch den Ausdruck importiert, der dann die Ausführung im ersten Block des Programms unterbricht. Nach dem Debuggen nach dem Mortem muss die Implementierung des Programms nach dem Fehler im Kernel-Modus gestartet werden, wie es bereits stattgefunden hat. Die Versorgungsunternehmen in PDB bieten Post-Mortem-Debugging. Bestimmte Anwendungen suchen nach dynamischer Rückverfolgung und aktivieren den Debugger im Call -Stack -Segment, in dem der Fehler angezeigt wurde. Wenn ein Fehler von der Anwendung erkannt wird.

Def multiplizieren (i, j):
Ans = i * J
Rückkehr Ans
u = input ("Bitte geben Sie den 1. Wert ein:")
v = input ("Bitte geben Sie den 2. Wert ein:")
res = multiplizieren (u, v)
Druck (res)

Zunächst wird die Multiply () -Methode definiert. Wir haben zwei verschiedene Variablen als unsere Argumente gegeben. Wir haben im folgenden Schritt eine Variable namens „ANS“ initialisiert. Hier multiplizieren wir die Werte der Variablen, die wir der Multiply () -Methode als Argumente anbieten. Dieser Ansatz gibt das Ergebnis zurück.

Jetzt würden wir die Funktion input () zweimal verwenden, wobei das erste Mal die Anweisung „Bitte den 1. Wert eingeben“ auf dem Bildschirm präsentiert. Wenn der Benutzer diesen Text auf dem Bildschirm sieht, liefert er daher den ersten Wert. Eine Variable mit dem Namen "U" kann verwendet werden, um den Wert zu speichern. Die Funktion der zweiten input () zeigt in ähnlicher Weise eine Meldung „Bitte geben Sie den 2. Wert ein.”Die zweite Ganzzahl muss als Eingabe genommen werden. Die Variable "V" enthält diesen Wert. Die multiply () -Methode wird jetzt aufgerufen. Die vom Benutzer angegebenen Werte werden als zwei Argumente in dieser Methode übergeben. Schließlich werden wir die Funktion print () verwenden, um das Ergebnis anzuzeigen.

Abschluss

In diesem Artikel haben wir darüber gesprochen, wie man den Python -Debugger „PDB“ benutzt. Debugging ist ein Begriff, der häufig im Prozess der Softwareentwicklung verwendet wird. Die Standardbibliothek für Python enthält das PDB -Paket, eine Sammlung von Tools zum Debuggen des Codes. Eine PDB -Klasse enthält die Definition von Debugging -Funktionen. Die BDB- und CMD -Pakete werden vom Modul implizit verwendet. Wir führen zwei Beispiele aus, und im ersten verwenden wir den PDB -Debugger, um die Ausnahme loszuwerden. Und in der zweiten Instanz hätten wir nicht "PDB" verwendet, daher bekommen wir einen Fehler.