本文概述
错误是程序中的问题, 由于这些问题而导致程序停止执行。另一方面, 当某些内部事件发生时, 会引发异常, 从而改变程序的正常流程。
python中会发生两种类型的错误。
- 语法错误
- 逻辑错误(异常)
语法错误
如果未遵循正确的语言语法, 则会引发语法错误。
例子
# initialize the amount variable
amount = 10000
# check that You are eligible to
# purchase Dsa Self Paced or not
if (amount> 2999 )
print ( "You are eligible to purchase Dsa Self Paced" )
输出如下:
它返回语法错误消息, 因为在if语句后加冒号:不见了。我们可以通过编写正确的语法来解决此问题。
逻辑错误(异常)
在运行时中, 通过语法测试后发生错误的情况称为异常或逻辑类型。例如, 当我们将任何数字除以零时, ZeroDivisionError引发异常, 或者当我们导入不存在的模块时ImportError被提出。
范例1:
# initialize the amount variable
marks = 10000
# perform division with 0
a = marks / 0
print (a)
输出如下:
在上面的示例中, 我们尝试将数字除以0时出现ZeroDivisionError。
范例2:缩进不正确时。
if (a< 3 ):
print ( "gfg" )
输出如下:
除上述异常外, 一些常见的内置异常是:
例外 | 描述 |
---|---|
IndexError | 当检索到错误的列表索引时。 |
断言错误 | 当断言语句失败时发生 |
AttributeError | 当属性分配失败时, 会发生这种情况。 |
ImportError | 当找不到导入的模块时发生。 |
KeyError | 当找不到字典的键时会发生。 |
NameError | 未定义变量时发生。 |
MemoryError | 当程序内存不足时会发生这种情况。 |
TypeError | 当以错误的类型应用功能和操作时, 会发生这种情况。 |
注意:有关更多信息, 请参阅Python中的内置异常
错误处理
当出现错误和异常时, 我们将借助Handling方法进行处理。
使用Try / Except / Finally处理异常
我们可以通过Try / Except / Finally方法处理错误。我们在try中编写不安全的代码, 在except中回退代码, 在finally块中返回最终代码。
例子
# put unsafe operation in try block
try :
print ( "code start" )
# unsafe operation perform
print ( 1 / 0 )
# if error occur the it goes in except block
except :
print ( "an error occurs" )
# final code in finally block
finally :
print ( "lsbin" )
输出如下:
code start
an error occurs
lsbin
为预定义条件引发异常
当我们想为某些条件的限制进行编码时, 我们可以引发一个异常。
例子
# try for unsafe code
try :
amount = 1999
if amount < 2999 :
# raise the ValueError
raise ValueError( "please add money in your account" )
else :
print ( "You are eligible to purchase DSA Self Paced course" )
# if false then raise the value error
except ValueError as e:
print (e)
输出如下:
please add money in your account
注意怪胎!巩固你的基础Python编程基础课程和学习基础知识。
首先, 你的面试准备可通过以下方式增强你的数据结构概念:Python DS课程。