Python 打印异常——如何尝试打印异常

每种编程语言都有其处理异常和错误的方式,Python 也不例外。

Python 自带一个内置的try…except语法,您可以使用它来处理错误并阻止它们中断程序的运行。

在本文中,您将学习如何使用它try…except语法来处理代码中的异常,如何在 Windows 11 上启用和使用语音访问这样它们就不会阻止您的程序运行。

我们将涵盖的内容

  • 什么是异常?

  • 语法try…except_

  • 如何处理异常try…except

  • 如何打印异常try…except

  • 如何打印异常名称

  • 结论

什么是异常?

在 Python 中,异常是错误对象。它是在程序执行期间发生的错误,并使程序停止运行——随后显示一条错误消息。

当异常发生时,Python 会创建一个异常对象,在 Windows 中连接到隐藏 Wi-Fi 网络的 3 种方法其中包含错误类型及其影响的行。

Python 有许多内置异常,例如IndexError, NameError, TypeError, ValueError,ZeroDivisionError KeyError等等。

语法try…except_

您可以将要运行的代码放在一个try块中,并在该块中处理异常,而不是让这些异常阻止您的程序运行except。

的基本语法try…except如下所示:

try:
  # code to run
except:
  # handle error

如何处理异常try…except

您可以使用 处理本文中提到的每个异常try…except。事实上,您可以使用try…except.

例如,如果您有一个大型程序并且您不知道某个标识符是否存在,您可以在块中执行您想要对标识符执行的操作并处理块中可能出现的try错误except:

try:
  print("Here's variable x:", x)
except:
  print("An error occured") # An error occured

你可以看到运行是except因为没有变量叫x因为代码中

继续阅读。如何在 Mac 和 Windows 上为 Microsoft Word 文档添加密码因为我将通过向您展示如何优雅地处理异常来向您展示如何使这些错误看起来更好。

如何打印异常try…except

但是如果你想打印发生的确切异常怎么办?您可以通过将 分配Exception给位于except。

当您执行此操作并将异常打印到终端时,它是Exception您获得的值。

这就是我将ZeroDivisionError异常打印到终端的方式:

try:
    res = 190 / 0
except Exception as error:
    # handle the exception
    print("An exception occurred:", error) # An exception occurred: division by zero

这也是我打印NameError异常的方式:

try:
  print("Here's variable x:", x)
except Exception as error:
  print("An error occurred:", error) # An error occurred: name 'x' is not defined

您可以按照此模式将任何异常打印到终端。

如何打印异常名称

如果您想获取确切的异常名称并将其打印到终端怎么办?这也是可能的。您需要做的就是使用type()函数获取异常的类型,然后使用__name__属性获取异常的名称。

这就是我修改示例ZeroDivisionError以打印确切异常的方式:

try:
    res = 190 / 0
except Exception as error:
    # handle the exception
    print("An exception occurred:", type(error).__name__) # An exception occurred: ZeroDivisionError

这就是我修改另一个示例以打印NameError示例的方式:

try:
  print("Here's variable x:", x)
except Exception as error:
  print("An error occurred:", type(error).__name__) # An error occurred: NameError

NameError通常,当您遇到诸如and之类的异常时ZeroDivisionError,您会以这种方式在终端中得到错误:

您可以组合该type()函数和该错误变量以使异常看起来更好:

try:
  print("Here's variable x:", x)
except Exception as error:
  print("An error occurred:", type(error).__name__, "–", error) # An error occurred: NameError – name 'x' is not defined
try:
    res = 190 / 0
except Exception as error:
    # handle the exception
    print("An exception occurred:", type(error).__name__, "–", error) # An exception occurred: ZeroDivisionError – division by zero
    

结论

如本文所示,try…except语法是处理错误和防止程序在执行期间停止的好方法。

您甚至可以Exception通过将错误分配给变量来将其打印到终端,并Exception使用该type()函数获取确切的类型。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

pxr007

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值