尝试并在Python程序中除外

在本教程中,我们要了解的尝试除外的Python。Python有一个称为错误和异常处理的概念

关键字tryexcept用于错误和异常处理。

基本上,我们将在Python中发现两种类型的错误。他们是-

  • 语法错误-当Python无法理解程序中的代码行时,会给出此类错误。

  • 异常错误-在程序运行时检测到的错误。例如:-ZeroDivisionError,ValueError等。,

我们无法停止语法错误。但是,我们可以使用try-except判断程序是否遇到异常错误让我们看看Python中最常见的异常错误。

  • ZeroDivisionError-当我们尝试将任何数字除以零时发生。

  • ValueError-当我们将不适当的值传递给函数时,它会升高。

  • IndexError-当我们尝试访问不可用的索引时。

  • KeyError-当我们尝试访问字典中不存在的键时。

  • ImportError-如果我们尝试导入不存在的模块。

  • IOError-当Python无法打开文件时发生。

  • KeyboardInterrupt-它在用户按下不需要的键时发生。

Python中有许多异常错误。我们可以使用try-except轻松处理这些问题首先让我们看看try-except的语法。

# try-except syntax
try:
   # statement
   # statement
   # ...
except:
   # statement
   # statement
   # ...

Python如何执行try-except块代码?让我们一步一步看。

  • 首先,Python在try块内执行代码。

  • 如果代码中没有任何异常错误,则除了块将不会执行。

  • 如果有任何异常错误的代码出现,然后尝试块将跳过除了块代码将执行**。

  • 如果发生任何异常错误,而除了block无法处理,则将引发相应的异常错误。

  • 一个try块可以有多个except语句。

示例

让我们看一个没有任何异常错误的示例。

# No exception error
try:
   arr = [1, 2, 3, 4, 5]
   # accesing an item from array with a valid index
   two = arr[1]
   print(f"We didn't get any errors {two}")
except IndexError:
   print("The given index is not valid")

输出结果

如果运行上述程序,则将得到以下结果。

We didn't get any errors 2

我们没有收到任何异常错误。因此,将执行try块中的代码。

示例

让我们看一下带有无效索引的相同示例。

# No exception error
try:
   arr = [1, 2, 3, 4, 5]
   # accesing an item from array with a invalid index
   six = arr[6]
   print(f"We didn't get any errors {six}")
except IndexError:
   print("The given index is not valid")

输出结果

如果执行以上代码,则将得到以下结果。

The given index is not valid

我们在try块中得到了IndexError。因此,执行except块中的代码。

示例

让我们看看如果except无法处理异常错误会发生什么。

# No exception error
try:
   arr = [1, 2, 3, 4, 5]
   # accesing an item from array with a invalid index
   six = arr[6]
   print(f"We didn't get any errors {six}")
except ValueError:
   print("The given index is not valid")

输出结果

如果运行上面的代码,那么您将得到以下结果。

---------------------------------------------------------------------------
IndexError                               Traceback (most recent call last)
<ipython-input-11-fe3737d0615b> in <module>
      3    arr = [1, 2, 3, 4, 5]
      4    # accesing an item from array with a invalid index
----> 5    six = arr[6]
      6 print(f"We didn't get any errors {six}")
      7 except ValueError:
IndexError: list index out of range

我们遇到了一个错误。我们在except块中给出了ValueError 。但是,我们得到了除外块无法处理的IndexError。因此,我们遇到了一个错误。在except块中指定异常错误时要小心。

结论

如果您对本教程有任何疑问,请在评论部分中提及。