Heim  >  Artikel  >  Backend-Entwicklung  >  Wie verwende ich die Try-Except-BaseException-Anweisung in Python?

Wie verwende ich die Try-Except-BaseException-Anweisung in Python?

WBOY
WBOYnach vorne
2023-05-09 08:34:071853Durchsuche

try...außer ist die gebräuchlichste Struktur zum Abfangen und Behandeln von Ausnahmen. Ihre Hauptfunktion besteht darin, die Codeblöcke zu verpacken, die Probleme mit try verursachen können: um zu verhindern, dass Fehler dazu führen, dass das Programm abstürzt

Common try.. Es gibt drei Strukturen von excpet:

try:
     pass
except BaseException as e :
    异常处理模块

try enthält Programmcode, der Ausnahmen verursachen kann, und der Except-Block enthält Code, der zum Abfangen von Ausnahmen und zum Behandeln von Ausnahmen nach dem Auftreten einer Ausnahme verwendet wird.

Wenn im Modul eine Ausnahme auftritt Die in try-Ausnahmen enthaltenen Ausnahmen springen zum Ausnahmemodul, um den Code auszuführen. Wenn keine Ausnahme auftritt, führt das Programm den Code nicht aus.

Einen Codeblock zum Testen geschrieben, der einen Fehler meldet

try:
    test = eval(str(input("请输入一个字符串: ")))
    tests = test + "This is a piece of test code"
except BaseException as e:
    print("出现的错误可能是%s"%e)
print("这是一段测试输出")

Wie verwende ich die Try-Except-BaseException-Anweisung in Python?

Fehlermeldung: nicht unterstützte Operandentypen für +: 'int' und 'str'

Nicht unterstützt: Datentyp: „int“ und „ str" ​​Spleißvorgang (+)

Eine korrekte Codeeingabe:

try:
    test = str(input("请输入一个字符串: "))
    tests = test + " "+"This is a piece of test code"
    print("输入正确的内容则会执行的代码块:",tests)
except BaseException as e:
    print("出现的错误可能是%s"%e)
print("这是一段测试输出")

Wie verwende ich die Try-Except-BaseException-Anweisung in Python?

Wörter dürfen nicht mit Zeichenfolgen gespleißt werden. Es dürfen nur in Zeichenfolgen konvertierte Zahlen gespleißt werden.

Dies ist ein problematischer Codeblock, der von try außer nicht verarbeitet wird:

Wenn try...exclusive... nicht verwendet wird: Um den möglichen Code zu umschließen, stürzt das Programm ab, was sich auf den nachfolgenden Code auswirkt

test = int(input("请输入一个字符串: "))
tests = test + " "+"This is a piece of test code"
print("这是一段测试输出")

Wie verwende ich die Try-Except-BaseException-Anweisung in Python?

Mehrere Ausnahme-Anweisungen,

Wenn die Art des Fehlers in dem von Ihnen geschriebenen Code nicht klar ist, können Sie ein paar weitere Ausnahme-Abfanganweisungen schreiben. Denken Sie daran, am Ende eine Ausnahme-BaseException für Vertuschungsoperationen hinzuzufügen (falls die Fehler, die auftreten, sind nicht Ihre) Ausnahmen werden mit „außer“ abgefangen (Sie können es verwenden, um dies herauszufinden). Es ist die übergeordnete Klasse aller Ausnahmen und enthält alle allgemeinen Ausnahmen.

arr = {
    "xiaomi":"123",
    "xiaozhang":"456",
    "xiaodede":"7,8,9"
}
arrs = (1,2,3,4,5)
 
try:
    3 / 0
 
    print(arrs[6])
except IndexError :
    print('导入包失败')
except KeyError :
    print('在字典中找不到指定的键')
except ImportError :
    print("索引时没有找到指定序列")
#兜底捕获错误,BaseException 是所有错误的父类可以说是包含了所有常见的错误
except BaseException as e:
    print(arr["mayuanyuan"])
    print(e)

Die durch die obigen Operationen ausgedrückten Funktionen stimmen mit den folgenden Operationen überein . Sie können auch alle möglichen Ausnahmen zusammenfassen, getrennt durch Kommas else wird nicht ausgeführt. (Wenn dieser Code nur eine Ausnahme im Codeblock in try auslöst, wird er außer zum Abfangen verwenden)

arr = (1,2,3,4,5)
try:
    int("3.1415926")
    print(add)  # 未定义
    print(arr[6]) #超出索引
 
except (IndexError,NameError,ValueError)as e:
    print(e)

Das war’s für das Ausnahmebehandlungsmodul , Ich möchte darüber sprechen In Bezug auf die tatsächliche Verwendung des Ausnahmebehandlungsmoduls werden einige Blogger möglicherweise nicht über ein sehr tiefes Verständnis dieses Moduls sprechen.

try:
    arr = int(input("请输入一个整数: "))
except BaseException as e:
    print(e)
else:
    arrs = arr + 111
    print(arrs)
print("测试结束")
Wie verwende ich die Try-Except-BaseException-Anweisung in Python?Sie wissen offensichtlich, dass es sich um eine Division durch Null handelt. Warum ändern Sie das nicht? Welche Fehler sind Ihnen eindeutig bekannt? Geht es nur darum, den Fehler zu testen, indem man ihn absichtlich ausschreibt?

Nach meiner Überlegung habe ich Ihnen einen lustigen

-Login-Passwort-Vorgang gegeben. Wenn das Passwort korrekt eingegeben wurde, wird es angezeigt, dass die Anmeldung erfolgreich ist mehr als dreimal erfolgt, wird die Meldung angezeigt: „Enter Das Passwort wurde aufgrund zu vieler falscher Eingaben gesperrt.“ fordert Sie zur Eingabe des Passworts auf und führt dann entsprechend dem Inhalt des Passworts eine entsprechende Verschlüsselung und Spleißung durch

try:
   4 /0
except BaseException as e:
    print(e)
报错: division by zero

Das obige ist der detaillierte Inhalt vonWie verwende ich die Try-Except-BaseException-Anweisung in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen