异常处理
一、基本介绍
异常就是程序运行时发生错误的信号(在程序出现错误时,则会产生一个异常,若程序没有处理它,则会抛出该异常,程序的运行也随之终止),在python中,错误触发的异常如下:
千锋云计算杨哥团队
二、异常的种类
# 试图访问一个对象没有的属性,比如foo.x,但是foo没有属性x
AttributeError
例如:
s = 'lenovo'
print(s.shark)
# 输入/输出异常;基本上是无法打开文件
IOError
# 无法导入模块或包;基本上是路径问题或名称错误
ImportError
# 缩进错误) ;代码没有正确对齐
IndentationError
例如:
if 1 == 1:
print(110)
# 下标索引超出序列边界,比如当 li 只有三个元素,却试图访问 li[5]
IndexError
例如:
li = [1, 2]
li[10]
# 试图访问字典里不存在的键
KeyError
例如:
d = {'a': 1}
d['b']
# 按了一下 Ctrl+C
KeyboardInterrupt
# 使用一个还未被赋予对象的变量
NameError
例如:
print(n)
# 无效语法,语法错误
SyntaxError
例如:
if 1 == 1
print('ok')
三、处理异常的语句
1. 基本语法
try:
被检测的代码块
except 异常类型:
try中一旦检测到异常,就执行这个位置的逻辑
示例:
try:
w = s[8]
except IndexError as e:
pass
print("程序继续运行")
不用的异常应该使用对其的异常类类型进行捕获。
try:
w = ss[9]
except IndexError as e:
print(e)
使用万能异常 Exception
try:
w = ss[9]
except Exception as e:
print(e)
四、生产环境如何处理异常
import traceback
print('start-->')
try:
1 + 'a'
except TypeError as e:
print(e)
print('*' * 30)
print(traceback.format_exc())
print('*' * 20)
print('end')
网友评论