Python异常处理

 

常见python异常:

复制代码
 1 AttributeError             试图访问一个对象没有的属性,比如foo.x,但是foo没有属性x
 2 IOError                 输入\输出异常,基本上是无法打开文件
 3 ImportError              无法引入模块或包,基本上是路径问题或名称错误
 4 IndentationError          语法错误(的子类);代码没有正确对齐
 5 IndexError               下标索引超出序列边界,比如当x只有三个元素,却试图访问x[5]
 6 KeyError                试图访问字典里不存在的键
 7 KeyboardInterrupt         Ctrl+C被按下
 8 NameError               使用一个还未被赋予对象的变量
 9 SyntaxError              Python代码非法,代码不能编译(语法错误)
10 TypeError               传入对象类型与要求的不符合
11 ValueError              传入一个调用者不期望的值,即使值得类型是正确的
12 UnboundLocalError        试图访问一个还未被设置的局部变量,基本上是由于另有一个名的全局变量,导致你以为正在访问他.
复制代码

Exception as e: 捕获全部类型的错误

Python异常捕捉

try:

  print x

except NameErrot:

  print "Something is Wrong!!!"

#############################################################################

循环 print 100次,如果中间按Crtl+C,仍然执行.

#!/usr/bin/env python

import time

for i in range(1,101):

  try:   

    print "Number %s" %i   

    time.sleep(0.5)                #休眠0.5秒

  except  KeyboardInterrupt:   

    print "Please do not interupt me,I an doing the importtant task here!"   

    continue

############################################################################################

3 手动触发异常:

try:

  raise MyException   

except MyException:

  print "encoutered"

Try ......finally

Finally----无论try块是否抛出异常,永远执行的代码。通常用来执行关闭文件,断开服务器连接功能等等.

原文地址:https://www.cnblogs.com/onesea/p/15459113.html