In der Python -Softwareentwicklung werden verschiedene Arten von Fehlern auftreten, wie Syntaxfehler, Logikfehler und Laufzeitfehler.
Syntaxfehler treten normalerweise in den frühen Stadien der Programmentwicklung auf und werden durch falsche Syntax verursacht. Syntaxfehler können beim Kompilieren eines Programms leicht festgestellt werden.
logische Fehler werden durch eine unsachgemäße logische Implementierung verursacht, z. B. ein Programm, das auf eine unsortierte Liste zugriff, geht jedoch davon aus, dass sie sortiert ist. Logische Fehler sind eine der schwierigsten Arten von Fehlern zu verfolgen.
Laufzeitfehler sind häufige Fehler, normalerweise treten normalerweise auf, da alle Grenzsituationen nicht berücksichtigt werden. Versuchen Sie beispielsweise, auf eine Datei zuzugreifen, die nicht vorhanden ist.
Dieses Tutorial erklärt, wie sie mit Fehlern in Python umgehen und wie Sie Fehlerprotokolle protokollieren, um die Probleme in Ihrer Anwendung besser zu verstehen. Wir werden die folgenden Themen behandeln:
try
und except
, um Ausnahmen finally
Satz Python -Ausnahmehandling
Beginnen wir mit einem einfachen Python -Additionsprogramm. Das Programm nimmt zwei Parameter als Eingabe und druckt ihre Summe aus:
def addNumbers(a, b): print(a + b) addNumbers(5, 10)
Führen Sie das obige Programm aus und die Summe der beiden Zahlen wird gedruckt.
Erstellen von benutzerdefinierten Ausnahmegementen kann die Lesbarkeit und Wartbarkeit Ihres Programms verbessern. Angenommen, es gibt ein Programm, das sicherstellen muss, dass der Rabattpreis des Artikels nicht höher als der Verkaufspreis ist. Wir können eine benutzerdefinierte Ausnahme für diese Art von Fehler erstellen:
class PriceError(Exception): pass
Fügen Sie dann dem Programm Ausnahmehandling hinzu:
def discount(price, discounted_price): if discounted_price > price: raise PriceError else: print("Discount applied")
Im obigen Code wird eine Ausnahme erhöht, wenn discounted_price
größer als price
ist. PriceError
Python -Protokollierung
Pythons Modul bietet einen Mechanismus zum Aufzeichnen von Programmen, die über Fehlermeldungen ausgeführte Informationen aufzeichnen. Wir können unterschiedliche Protokollebenen wie Debug, Info, Warnung, Fehler und kritisch festlegen. Das folgende Code -Snippet zeigt, wie Informationen mithilfe des logging
-Moduls aufzeichnen: logging
import logging # 初始化日志设置 logging.basicConfig(filename='app.log', level=logging.INFO) try: # ...你的代码... except Exception as e: logging.exception(str(e))
Stapel -Trace -Informationen erhalten
Im obigen Beispiel gibt es nur eine Programmdatei, sodass es leicht zu finden ist, wo der Fehler aufgetreten ist. Es ist jedoch besonders wichtig, die falschen Stapel -Trace -Informationen zu erhalten, wenn mehrere Programmdateien beteiligt sind. Sie können die -Methode verwenden, um die Stapel -Trace -Informationen der Ausnahme aufzuzeichnen, wie unten gezeigt: logging.exception()
import logging # 初始化日志设置 logging.basicConfig(filename='app.log', level=logging.INFO) try: filePointer = open('appFile', 'r') try: content = filePointer.readline() finally: filePointer.close() except IOError as e: logging.exception(str(e))
Zusammenfassung
Dieses Tutorial führt die grundlegenden Methoden der Python -Fehlerbehebung und -protokollierung vor, einschließlich der Verwendung von Anweisungen try
, except
und finally
und die Anwendung von logging
Modulen. Es wird empfohlen, die offizielle Dokumentation für detailliertere Informationen zu lesen.
Dieses Dokument wurde aktualisiert und enthält Beiträge von Esther Vaati. Esther ist ein Softwareentwickler und Beitrag zu Envato -Tuts.
Das obige ist der detaillierte Inhalt vonFehlerhandhabung und Anmeldung in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!