Python 程序中的 try 和 except
在本教程中,我们将学习 Python 的 try 和 except。Python 有一个称为 错误和异常处理 的概念。
关键字 try 和 except 用于错误和异常处理。
基本上,我们会在 Python 中发现两种类型的错误。它们是 −
语法错误 - 当 Python 无法理解程序中的一行代码时,它会给出这些类型的错误。
异常错误 - 在程序运行时检测到的错误。例如:- ZeroDivisionError、ValueError 等,
我们无法阻止语法错误。但是,我们可以使用try-except来提示程序是否遇到了异常错误。让我们看看 Python 中最常见的异常错误。
ZeroDivisionError − 当我们尝试用零 (0) 除以任何数字时,就会发生这种情况。
ValueError − 当我们将不适当的值传递给函数时,就会引发这种情况。
IndexError − 当我们尝试访问不可用的索引时。
KeyError − 当我们尝试访问字典中不存在的键时。
ImportError −如果我们尝试导入一个不存在的模块。
IOError − 当 Python 无法打开文件时发生。
KeyboardInterrupt − 当用户按下不需要的键时发生。
Python 中有很多异常错误。我们可以使用 try-except 轻松处理这些错误。让我们先看看 try-except 的语法。
# try-except 语法 try: # 语句 # 语句 # ... except: # 语句 # 语句 # ...
Python 如何执行 try-except 块代码?让我们一步一步来看看。
首先,Python 执行 try 块内的代码。
如果代码中没有任何 异常错误,则 except 块将不会执行。
如果代码中发生任何 异常错误,则将跳过 try 块并执行 except 块代码**。
如果发生任何 异常错误并且 except 块无法处理它,则会引发相应的异常错误。
我们可以为一个 try 包含多个 except 语句。块。
示例
让我们看一个没有任何异常错误的示例。
# 无异常错误
try:
arr = [1, 2, 3, 4, 5]
# 使用有效索引从数组访问项目
two = arr[1]
print(f"我们没有收到任何错误 {two}")
except IndexError:
print("给定的索引无效")
输出
如果运行上述程序,您将得到以下结果。
我们没有得到任何错误 2
我们没有得到任何异常错误。因此,try 块中的代码被执行。
示例
让我们看一个具有无效索引的相同示例。
# 无异常错误
try:
arr = [1, 2, 3, 4, 5]
# 使用无效索引从数组中访问项目
six = arr[6]
print(f"我们没有得到任何错误 {six}")
except IndexError:
print("给定的索引无效")
输出
如果执行上述代码,则会得到以下结果。
给定的索引无效
我们在 try 块中得到了 IndexError。因此,执行了 except 块中的代码。
示例
让我们看看如果 except 无法处理异常错误会发生什么。
# 没有异常错误
try:
arr = [1, 2, 3, 4, 5]
# 使用无效索引从数组中访问项目
six = arr[6]
print(f"我们没有收到任何错误 {six}")
except ValueError:
print("给定的索引无效")
输出
如果运行上述代码,您将获得以下结果。
---------------------------------------------------------------
IndexError 回溯(最近一次调用最后一次)
<ipython-input-11-fe3737d0615b> 在 <module> 中
3 arr = [1, 2, 3, 4, 5]
4 # 使用无效索引访问数组中的项目
----> 5 six = arr[6]
6 print(f"我们没有收到任何错误 {six}")
7 except ValueError:
IndexError: list index out of range
我们收到错误。我们在 except 块中给出了 ValueError 。但是,我们收到 IndexError,它无法由 except 块处理。因此,我们收到错误。在 except 块中指定异常错误时要小心。
结论
如果您对本教程有任何疑问,请在评论部分中提及。
相关文章
有用资源
python 参考教程 - 该教程包含有关 python 的更多信息:https://www.cainiaomax.com/python/

