Chinaunix首页 | 论坛 | 博客
  • 博客访问: 47052
  • 博文数量: 23
  • 博客积分: 425
  • 博客等级: 下士
  • 技术积分: 237
  • 用 户 组: 普通用户
  • 注册时间: 2012-12-10 09:57
文章分类

全部博文(23)

文章存档

2013年(23)

我的朋友

分类: Python/Ruby

2013-01-05 19:37:30

异常处理Assert(2)

Python中assert的运用于C语言中的assert()函数相似,

主要功能在于确保程序中的某个条件一定为真时,才能让程序执行,否则终止程序执行并触发AssertionError错误

其可以视为相对高级点的异常处理

语法:assert expression1, expression2 (不用小括号)

其中,expression1 表示程序继续执行的判断条件,为真则继续,为假则程序终止,并抛出expression2给出的描述信息

>>> a=10
>>> assert a<=10, "Error"
>>> a = 11
>>> assert a<=10, "Error"
Traceback (most recent call last):
  File "", line 1, in
AssertionError: Error

等价于:

if a>10: raise AssertionError("Error")

说明:

assert语句一般用于程序编写过程中的调试,将其添加到Python源代码中后,未避免影响编译性能,

建议尽量去除assert语句,并将__debug__这个内置变量设置为False,即在运行命令行中添加参数

python -0 test.py

(这其实与C语言中的编译参数-d类似)
阅读(272) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~