在 Python 中使用 try...else 块

Najwa Riyaz 2023年1月30日 2021年7月13日
  1. 在 Python 中使用没有 else 子句的 try...except
  2. 在 Python 中使用 try...except 块和 else 子句
在 Python 中使用 try...else 块

本文解释了如何使用 elsetry...except 对。我们已经包含了一些你用作指南的方法,以将这对组合到一个程序中。

try
   except: <a code block>
   else: <a code block. Note: 'else' clause is optional>

except 子句用于指定 >=1 异常处理程序。如果在 try 块中抛出异常,则执行与此子句关联的代码块,从而处理错误。

else 子句是可选的。它位于所有 except 子句之后。只有在 try 块中没有抛出异常时,才会执行与此子句关联的代码块。

让我们尝试使用和不使用 else 语句的示例。

在 Python 中使用没有 else 子句的 try...except

这是一个示例代码,演示如何使用 try...except 而没有 else 子句。

try:
  print("From the 'try' statement block - ",var1)
except:
  print("Except block - An exception occurred")

此处,在 try 块中未定义 var1,会发生以下情况。

  • try 块中发生异常。
  • 不打印 try 块中的 print 语句。
  • 执行 except 代码块。

输出:

Except block - An exception occurred

在 Python 中使用 try...except 块和 else 子句

此处,示例代码显示了如何将 try...exceptelse 子句一起使用。

try:
  var=3
  print("From the 'try' statement block - ",var)
except NameError:
  print("Except block with 'NameError'-Variable `var` is not defined")
except:
  print("Except block -Some other exception")
else:
  print("From the 'else' clause block - ",var)

这里,在 try 块中定义了 var,因此会发生以下情况。

  • try 块中没有发生异常。
  • 打印出现在 try 块中的 print 语句。
  • except 代码块不执行。
  • else 代码块被执行。
  • 打印出现在 else 块中的 print 语句。

输出:

From the 'try' statement block -  3
From the 'else' clause block -  3

相关文章 - Python Exception