[入门-8] 错误处理之异常
2016-11-27 23:24
316 查看
常见异常Error
NameErrorZeroDivisionError
SyntaxError(唯一非运行时错误)
IndexError
KeyError
IOErrpr
OSError
AttributeError
ValueError
TypeError
两个不是由错误引起的异常Error:
SystemExit python程序需要退出KeyboardInterupt ctrl+C
异常类
BaseExceptiomKeyboardInterrupt
SystemExit
Exception
all other current build-in exceptions
try: pass except ValueError, reason: print "%s" %str(reason) except TypeError, reason: print "%s" %str(reason) except (IndexError, KeyError), reason: print "%s" %str(reason) except Exception, reason: #捕获所有异常, 不推荐使用空的except语句 print "%s" %str(reason) else: #try 中没有异常的时候会执行else print "No exceptions in try block" finally: #无论如何都会执行到的代码,既是否有异常出现,都会执行 pass
触发异常
raise SomeException, args, traceback raise exclass, args, tb raise exclass() raise exclass, instance raise string, args, tb
断言
#assert = raise if not ... #AssertError,断言引发的异常 asssert expression, arguments assert 1==1 try: pass except AssertionError, args: print '%s, %s' %(args.__class__.__name__, args)
sys模块
try: pass exception: import sys exc_tuple = sys.exc_info() print exc_tuple for item in exc_tuple: print item #(exc_type, exc_value, exc_traceback) = sys.exc_info() #异常类,类实例,追踪记录对象
Reference
Python核心编程相关文章推荐
- Glide 入门到精通之十一 ——异常:调试和错误处理
- PHP5的异常处理机制[6]--PHP5之前的错误处理--小结
- C++ Coding Standards:错误处理和异常
- 一个处理数据库异常的类,按照错误码弹出提示信息
- COM组件设计与应用12 - 错误与异常处理
- 异常处理及日志错误信息备忘——都是那么低级的错误,唉~
- PHP5的异常处理机制[2]--PHP5之前的错误处理之die()
- 关于异常和错误处理编程的精华文章。。来自Damien Katz
- .net中常出现的错误异常的处理
- 在用c++读取xml文件时,运行时出现以下错误:出现未处理的“System.Xml.XmlException”类型的异常出现在 system.xml.dll 中
- 错误异常处理总结
- PHP5的异常处理机制[10]--同时处理多个错误
- 错误处理: 从托管的 COM+ 服务器应用中抛出自定义异常类型
- WCF 中的异常(错误)处理和编程规范
- 一个处理数据库异常的类,按照错误码弹出提示信息
- PHP5的异常处理机制[5]--PHP5之前的错误处理--使用PEAR处理错误
- PHP5的异常处理机制[4]--PHP5之前的错误处理--返回Error flag(错误标记)
- Thinking in Java第三版读书笔记-第九章:异常带来处理错误
- 错误处理和异常处理,你用哪一个[转载]
- C++编程规范之错误处理与异常(读书笔记)