Python中的异常处理简明介绍

yipeiwu_com6年前Python基础

python异常处理机制和java类似,采用try-except-finally的结构.

try-except检测异常

格式

复制代码 代码如下:

try:
    try_statement
except (ErrorType1, ErrorType2),e:
    handle_statement
finally:
    finally_statement

实例
复制代码 代码如下:

#!/usr/bin/python
try:
    a=12
    b=0
    c = a/b
except Exception, e:
    print  "Exception occurs: " , e
finally:
    print "finally handle!"

上下文管理器(with…as…语句)

with语句可以特别适用于首先打开资源最后释放资源的场景,因为它会自动释放占有的资源,不需要显示地释放资源

格式

复制代码 代码如下:

with context_expr [as var]:
    with_statement

raise引发异常

格式

复制代码 代码如下:

raise Exception[, args] or raise Exception(args)

实例
复制代码 代码如下:

raise Exception(‘exampleException')

断言

检测程序的关键点,断言不成功的时候触发AssertError(断言错误)
格式如下

复制代码 代码如下:

assert expression[, arguements]

相关文章

Python进阶_关于命名空间与作用域(详解)

写在前面 如非特别说明,下文均基于Python3 命名空间与作用于跟名字的绑定相关性很大,可以结合另一篇介绍Python名字、对象及其绑定的文章。 1. 命名空间 1.1 什么是命名空间...

python实现维吉尼亚加密法

python实现维吉尼亚加密法

本文实例为大家分享了python实现维吉尼亚加密法的具体代码,供大家参考,具体内容如下 Vigenere加密/解密时,把英文字母映射为0-25的数字再进行运算,并按n个字母为一组进行变换...

django项目搭建与Session使用详解

django项目搭建与Session使用详解

前言 Django完全支持也匿名会话,简单说就是使用跨网页之间可以进行通讯,比如显示用户名,用户是否已经发表评论。session框架让你存储和获取访问者的数据信息,这些信息保存在服务器上...

详解Django 时间与时区设置问题

再写入数据库对时间进行加减操作时候 django报告了错误 TypeError: can't subtract offset-naive and offset-aware datet...

python程序中的线程操作 concurrent模块使用详解

一、concurrent模块的介绍 concurrent.futures模块提供了高度封装的异步调用接口 ThreadPoolExecutor:线程池,提供异步调用 ProcessPo...