📜  python try except: 打印错误 - Python (1)

📅  最后修改于: 2023-12-03 15:04:09.580000             🧑  作者: Mango

Python Try Except: 打印错误

在编写代码时,经常会遇到错误,这可能是由于语法错误、逻辑错误或其他因素引起的。为了避免代码崩溃,Python中提供了try-except语句,可以帮助我们捕获并打印这些错误。

Python Try Except

try-except语句的语法如下:

try:
    # 可能会导致错误的代码块
except <异常类型>:
    # 当指定的异常类型发生时,执行的代码块

如果try代码块中的代码成功运行,则跳过except代码块。如果try代码块中的代码发生异常,则跳过该代码块,并执行except代码块。

Python Try Except Finally

除了try-except语句,还有一个try-except-finally语句,finally代码块始终都会被执行,无论try或except代码块是否执行成功。

try:
    # 可能会导致错误的代码块
except <异常类型>:
    # 当指定的异常类型发生时,执行的代码块
finally:
    # 不管try和except代码块的结果如何,都会执行的代码块
打印异常信息

try-except语句中的except代码块通常会打印异常信息,帮助我们确定代码的问题所在。以下是打印异常信息的几种方法:

1. 仅打印错误描述
try:
    # 可能会导致错误的代码块
except <异常类型> as e:
    print(e)
2. 打印完整的错误信息
import traceback

try:
    # 可能会导致错误的代码块
except <异常类型>:
    print(traceback.format_exc())
3. 记录错误日志
import logging

try:
    # 可能会导致错误的代码块
except <异常类型>:
    logging.exception(<错误信息>)
示例代码

以下是一个示例代码,演示了如何在try-except中打印错误信息:

import logging

try:
    # 可能会导致错误的代码块
    print(1 / 0)
except ZeroDivisionError as e:
    # 打印错误描述
    print(e)

try:
    # 可能会导致错误的代码块
    print(1 / 0)
except ZeroDivisionError:
    # 打印完整的错误信息
    import traceback
    print(traceback.format_exc())

try:
    # 可能会导致错误的代码块
    print(1 / 0)
except ZeroDivisionError:
    # 记录错误日志
    logging.exception('Error occurred')