Python 中的运行时错误示例?

pythonserver side programmingprogramming更新于 2024/2/18 10:40:00

在本文中,我们将介绍 Python 编程语言中的一些运行时错误示例

运行时错误

  • 程序中的运行时错误是在程序成功编译后发生的错误。

  • 如果程序语法正确(没有语法错误),Python 解释器将运行该程序。但是,如果程序遇到运行时错误(在解析程序时未检测到的问题,仅在执行特定行时才会显示出来),它可能会在执行过程中意外退出。当程序由于运行时错误而崩溃时,我们称它已崩溃

Python 运行时错误的一些示例

  • 除以零

  • 对不兼容类型执行操作

  • 使用未定义的标识符

  • 访问不存在的列表元素、字典值或对象属性

  • 尝试访问不存在的文件

让我们通过一个例子来仔细看看它们中的每一个

除以零

如果我们将任何数字除以零,我们就会得到这个错误。

算法(步骤)

以下是要遵循的算法/步骤执行所需的任务 −

  • 取一个变量来存储第一个输入数字。

  • 取另一个变量来存储第二个输入数字(此处第二个数字应为 0)。

  • 将第一个数字除以第二个数字并打印结果。

示例

如果我们用零除一个数字,以下程序将返回运行时错误 −

# First Input Number firstNumb = 11 # Second Input Number (Here it is 0) secondNumb = 0 # Dividing the first Number by the second Number print(firstNumb/secondNumb)

输出

执行时,上述程序将生成以下输出 -

Traceback (most recent call last):
  File "main.py", line 6, in <module>
print(firstNumb/secondNumb)
ZeroDivisionError: division by zero

由于第二个数字是 0,并且没有数字可以除以 0,因此我们得到一个运行时错误。

对不兼容的类型执行操作

当我们对不兼容的数据类型执行加法、乘法等操作时,会发生此错误。

算法(步骤)

以下是执行所需任务需要遵循的算法/步骤 -

  • 取一个字符串并为其分配一些随机值并将其存储在一个变量中。

  • 取一个整数并为其分配一些随机整数值并将其存储在另一个变量中。

  • 对上述变量执行一些操作(例如加法)并打印它。

示例

如果我们对不兼容的数据类型执行操作,以下程序将返回运行时错误−

# Input string inputString = "TutorialsPoint" # Input Number inputNumber = 11 # Adding both integer and string values print(inputString + inputNumber)

输出

执行时,上述程序将生成以下输出 -

Traceback (most recent call last):
  File "main.py", line 6, in <module>
    print(inputString + inputNumber)
TypeError: must be str, not int

我们无法在此处将整数添加到字符串数据类型,因此我们得到类型错误(运行时错误)。

使用尚未定义的标识符

当我们尝试访问之前未声明的标识符时会发生此错误。

示例

如果我们使用未定义的标识符,以下程序将返回运行时错误 -

# Printing undefined identifier print(tutorialsPoint)

输出

执行时,上述程序将生成以下输出 -

Traceback (most recent call last):
  File "main.py", line 2, in <module>
    print(tutorialsPoint)
NameError: name 'tutorialsPoint' is not defined

由于我们没有定义 tutorialsPoint 标识符并且通过打印它来访问它,因此发生运行时错误(名称错误)。

访问不存在的列表元素、字典值或对象属性

当我们尝试访问不存在的列表、字符串、字典元素/索引时,会发生此运行时错误。

当我们尝试使用不存在或太大的索引时,它会抛出 IndexError

算法(步骤)

以下是执行所需任务要遵循的算法/步骤 -

  • 创建一个列表并为其分配一些随机值。

  • 通过提供不存在的索引并打印来按索引访问列表元素它。

示例

如果我们访问超出范围的元素,以下程序将返回索引错误 -

# input list inputList =[1, 4, 8, 6, 2] # 打印输入列表中索引 10 处的元素 # 抛出 IndexError,因为索引 10 在输入列表中不存在 print("Element at index 10:", inputList[10])

输出

执行时,上述程序将生成以下输出 -

Traceback (most recent call last):
  File "main.py", line 6, in <module>
    print("Element at index 10:", inputList[10])
IndexError: list index out of range

列表中有 5 个元素,我们试图访问第 10 个索引,但该索引不存在,导致索引错误。

尝试访问不存在的文件

如果我们尝试打开不存在的文件,则会引发运行时错误。

算法(步骤)

以下是执行所需任务需要遵循的算法/步骤 -

  • 创建一个变量来存储文本文件的路径。这是一个固定值。在下面的示例中,此值必须替换为您自己的系统中的文件路径。

  • 使用 open() 函数(打开文件并返回文件对象作为结果)通过传递文件名和模式作为参数以只读模式打开文本文件(此处 "r" 代表只读模式)

givenFile = open(inputFile,"r")
  • 打印给定文件的值。

示例

如果我们访问不存在的文件,以下程序将返回文件未找到错误 −

# input file path inputFile = "tutorialsPoint.txt" # Opening the given file in read-only mode. givenFile = open(inputFile,"r") # Printing value of given File print(givenFile)

输出

执行时,上述程序将生成以下输出 -

Traceback (most recent call last):
  File "main.py", line 4, in <module>
    givenFile = open(inputFile,"r")
FileNotFoundError: [Errno 2] No such file or directory: 'tutorialsPoint.txt'

结论

我们在本文中了解了 Python 中的运行时错误。我们还使用示例来解释最常见的 Python 运行时错误。


相关文章