Python异常处理try...except...finally raise assert
异常处理:
try ...except try代码块放置容易发生异常的语句:except代码块放置处理异常的语句
try ...except...finally finally代码快是任何时候都会执行的;通常用于关闭系统的资源
- try:
- f = open('db100.txt','r')
- try:
- a = f.write('aa')
- print a
- except:
- print 'write error'
- finally:
- f.close()
- print 'close file'
- except:
- print 'open error'
- 输出:
- write error
- close file
raise 抛出异常;
- def reporterror(x):
- if x == None:
- raise NameError
- print x
- try:
- reporterror(None)
- except NameError:
- print 'x == None'
- #输出:
- x == None
自定义异常:
必须继承于Exception类
类名以Error结尾
自定义异常使用raise语句引发,而且只能通过手工引发:
Python pass 语句
Python pass是空语句,是为了保持程序结构的完整性。
pass 不做任何事情,一般用做占位语句。
- class MyError(Exception):
- pass
- def reporterror(x):
- if x == None:
- raise MyError()
- print x
- try:
- reporterror(None)
- except MyError,error:
- print 'x == None'
- #输出:
- x == None
- --------------------------------------
assert:语句用于测试某个条件表达式为真,即认为测的表达式永远为真,如果断言失败,会引发AssertionError异常
- str = 'hello'
- try:
- #x = 10/0
- assert len(str) == 3
- except AssertionError,x:
- print 'assert error',x
- 输出:
- assert error
异常信息:
str = 'hello'
- try:
- x = 10/0
- assert len(str) == 3
- except AssertionError,x:
- print 'assert error',x
- except Exception ,ex:
- print ex
- 输出:
- integer division or modulo by zero
Python异常处理try...except...finally raise assert的更多相关文章
- python异常处理--try except else raise finally
转载自https://www.cnblogs.com/bokeyuan11/p/9146607.html 写程序时遇到异常情况,程序可能无法正常运行.此时就需要引入异常处理 1.try ...exce ...
- python异常处理try,except,else,finally,raise
先看下else的使用: try: ... exception: ... else: ... 只有在try中没有发生任何异常,所有代码完全成功的情况下才会转入else 再看下finally: final ...
- Python 异常处理--raise函数用法
raise语句手工引发一个异常: "raise" [expression ["," expression ["," expression]] ...
- python 异常处理函数--raise
Python 异常处理--raise函数用法 在Python中,要想引发异常,最简单的形式就是输入关键字raise,后跟要引发的异常的名称.异常名称标识出具体的类: Python异常处理是那些类的对象 ...
- PYTHON 异常处理 一 ASSERT
assert语句,如果没记错,这个东西在C或者C++里面也有的.属于短小的断言.下面的是来自python help document的说明: Assert statements are a conve ...
- Python异常处理总结
一.何谓异常处理 在我们调试程序时,经常不可避免地出现意料之外的情况,导致程序不得不停止运行,然后提示大堆提示信息,大多是这种情况都是由异常引起的.异常的出现一方面是因为写代码时粗心导致的语法错误,这 ...
- Python异常处理回顾与总结
1 引言 在我们调试程序时,经常不可避免地出现意料之外的情况,导致程序不得不停止运行,然后提示大堆提示信息,大多是这种情况都是由异常引起的.异常的出现一方面是因为写代码时粗心导致的语法错误,这种错误在 ...
- 笔记:Python异常处理与程序调试
Python异常处理与程序调试 Python提供了强大的异常处理机制,通过捕获异常可以提高程序的健壮性.异常处理还具有释放对象,中止循环的运行等作用.在程序运行的过程中,如果发生了错误,可以返回事先约 ...
- python异常处理(基础)
之前在学习python的时候有整理过python异常处理的文章,不够简单也不够完整,所以决定再整理一篇,算做补充. http://www.cnblogs.com/fnng/archive/2013/0 ...
随机推荐
- WEB漏洞挖掘技术总结
漏洞挖掘技术一直是网络攻击者最感兴趣的问题,漏洞挖掘的范围也在随着技术的提升而有所变化.在前期针对缓冲区溢出.格式化字符串.堆溢出.lib库溢出等技术都是针对ELF文件(Linux可执行文件)或者PE ...
- dynamic bone unity github
https://github.com/unity3d-jp/unitychan-crs 我发现我总找不到以前的东西.. https://www.cnblogs.com/alps/p/8284577.h ...
- java学习笔记2--数据类型、数组
本文地址:http://www.cnblogs.com/archimedes/p/java-study-note2.html,转载请注明源地址. 1.数据类型 Java数据类型有: 原始数据类型(Pr ...
- Elasticsearch 数据搜索篇
curl 'localhost:9200/_cat/indices?v' health index pri rep docs.count docs.deleted store.size pri.sto ...
- (剑指Offer)面试题42:翻转单词顺序
题目: 输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变.为简单起见,标点符号和普通字母一样处理. 例如输入字符串“I am a student.”,则输出"student. ...
- 推荐9款使用CSS3实现的超酷动画效果
大家都知道,在网页制作时使用CSS技术,可以有效地对页面的布局.字体.颜色.背景和其它效果实现更加精确的控制.只要对相应的代码做一些简单的修改,就可以改变同一页面的不同部分,或者页数不同的网页的外观和 ...
- 退出app 退出应用程序
退出app的两种方式1 创建activity的基类,让所有的activity都继承该基类,在基类中创建一个静态的activity列表,并在oncreate方法添加该activity,在退出时,遍历 ...
- Swift学习笔记 - 字符串
1. 不可变字符串 Objective-C: NSString *string1 = @"Hello World!"; Swift: let string1 = "Hel ...
- ThinkPad如何修改fn键默认操作
ThinkPad如何修改fn键默认操作 ThinkPad笔记本如何修改fn键默认操作 Fn键F1-F12
- 深度介绍Linux内核是如何工作的
本文发表于Linux Format magazine杂志,作者从技术深度上解释了Linux Kernel是如何工作的.相信对Linux开发者来说有不小的帮助. 牛津字典中对"kernel&q ...