【第十八节】Python错误和异常

文章目录 [ 隐藏 ]

Python3 异常

作为Python初学者,在刚学习Python编程时,经常会看到一些报错信息,在前面我们没有提及,这章节我们会专门介绍。

下面列出几个常见的异常,大家只要大致扫一眼,有个映像即可。

异常 描述
NameError 尝试访问一个没有申明的变量
ZeroDivisionError 除数为0
SyntaxError 语法错误
IndexError 索引超出序列范围
KeyError 请求一个不存在的字典关键字
IOError 输入输出错误(比如你要读的文件不存在)
AttributeError 尝试访问未知的对象属性
ValueError 传给函数的参数类型不正确,比如给int()函数传入字符串形

2.异常捕获的语法

标准语法:

2.1 try..except

try_suite不消我说大家也知道,是我们需要进行捕获异常的代码。而except语句是关键,我们try捕获了代码段try_suite里的异常后,将交给except来处理。
try…except语句最简单的形式如下:

或者

举个列子

2.2try … except…else语句
没有检测到异常的时候,则执行else语句。举个例子大家可能更明白些:

2.3 finally子句
finally子句是无论是否检测到异常,都会执行的一段代码。我们可以丢掉except子句和else子句,单独使用try…finally,也可以配合except等使用

介绍一个特殊的处理异常的简便方法

断言(assert)
什么是断言,先看语法:

其中assert是断言的关键字。执行该语句的时候,先判断表达式expression,如果表达式为真,则什么都不做;如果表达式不为真,则抛出异常。reason跟我们之前谈到的异常类的实例一样。不懂?没关系,举例子!最实在!

assert后面的表达式为真,则什么都不做,如果不为真,就会抛出AssertionErro异常,而且我们传进去的字符串会作为异常类的实例的具体信息存在。其实,assert异常也可以被try块捕获

未经允许不得转载:Python在线学习 » 【第十八节】Python错误和异常

赞 (0)

来吐槽吧 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址