版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 10 * (1/0)Traceback (most recent call last): File , line 1, in ?ZeroDivisionError: division by zero 4 + spam*3Traceback (most recent call last): File , line 1, in ?NameError: name spam is not defined 2 + 2Traceback (most recent call last): File , line 1, in ?TypeError: Cant convert int object to st
2、r implicitlyl语法错误和逻辑错误不属于异常,但有些语法错误往往会导致异常,例如由于大小写拼写错误而访问不存在的对象。l当Python检测到一个错误时,解释器就会指出当前流已无法继续执行下去,这时候就出现了异常。异常是指因为程序出错而在正常控制流以外采取的行为。l异常分为两个阶段:第一个阶段是引起异常发生的错误;第二个阶段是检测并处理阶段。可以继承Python内置异常类来实现自定义的异常类。class ShortInputException(Exception):你定义的异常类。def _init_(self, length, atleast):Exception._init_(se
3、lf)self.length = lengthself.atleast = atleast try:s = raw_input(请输入 - )if len(s) class MyError(Exception): def _init_(self, value): self.value = value def _str_(self): return repr(self.value) try: raise MyError(2*2) except MyError as e: print(My exception occurred, value:, e.value)My exception occur
4、red, value: 4 raise MyError(oops!)Traceback (most recent call last): File , line 1, in ?_main_.MyError: oops!try.except.结构try子句中的代码块放置可能出现异常的语句,except子句中的代码块处理异常。try:try块#被监控的语句except Exception, reason:except块#处理异常的语句 while True: try: x = int(input(Please enter a number: ) break except ValueError: p
5、rint(That was no valid number. Try again.)try.except.else.语句如果try范围内捕获了异常,就执行except块;如果try范围内没有捕获异常,就执行else块。a_list = China, America, England, Franceprint 请输入字符串的序号while True:n = input( )try:print a_listnexcept IndexError:print 列表元素的下标越界,请重新输入字符串的序号else: breakfor arg in sys.argv1: try: f = open(arg,
6、 r) except IOError: print(cannot open, arg) else: print(arg, has, len(f.readlines(), lines) f.close()import systry: f = open(myfile.txt) s = f.readline() i = int(s.strip()except OSError as err: print(OS error: 0.format(err)except ValueError: print(Could not convert data to an integer.)except: print(
7、Unexpected error:, sys.exc_info()0) raisel将要捕获的异常写在一个元组中,可以使用一个excep语句捕获多个异常:import systry: f = open(myfile.txt) s = f.readline() i = int(s.strip()except (OSError, ValueError,RuntimeError, NameError): pass def divide(x, y): try: result = x / y except ZeroDivisionError: print(division by zero!) else:
8、 print(result is, result) finally: print(executing finally clause) divide(2, 1)result is 2.0executing finally clause divide(2, 0)division by zero!executing finally clause divide(2, 1)executing finally clauseTraceback (most recent call last): File , line 1, in ? File , line 3, in divideTypeError: uns
9、upported operand type(s) for /: str and strlPython2with open(d:test.txt) as f: for line in f:print linelPython3with open(myfile.txt) as f: for line in f: print(line, end=)import sys try: 1/0 except: tuple = sys.exc_info()print tuple完整/简写命令用法示例解释a(rgs) 显示当前函数中的参数b(reak) filename:lineno | function, condition b 173在173行设置断点b function在function函数第一条可执行语句位置设置断点b不带参数则列出所有断点,包括每个断点的触发次数、当前忽略计数、以及与之关联的条件b 175, condition设置条件断点,仅当condition的值为True时该断点有效cl(ear) filename:lineno | bpnumber bpnumber . cl清除所有断点cl filename:lineno删除指定文件指定行的所有断点cl 3 5 9删除第3、5、9个断点condition bpnu
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026中国智能病床行业养老机构采购偏好与功能升级报告
- 2026自动驾驶高精度地图采集标准与商业模式探索白皮书
- 2026中国涡流泵行业数据驱动与智能化决策分析报告
- 2026中国铁路运输行业市场发展形势供求分析及投资前景规划研究报告
- 安全生产管理多听听职工群众意见有好处培训课件
- 2026叶黄素酯行业专利布局与技术壁垒分析报告
- 2026汽车后市场服务模式研究及产业链整合策略文献
- 2026中国水文地质行业市场供需分析及投资评估规划分析研究报告
- 2026中国太阳能热泵行业市场现状供需分析及投资评估规划分析研究报告
- 2026中国智能安防监控行业市场发展趋势与前景展望战略研究报告
- 2025湖北襄阳市襄高控股发展有限公司招聘复试笔试历年参考题库附带答案详解
- 电厂二十五项反措课件
- 统计基础知识与统计实务
- 2025年西藏幼儿园教师职称业务考试(学前教育)历年参考题库含答案详解(5套)
- 反食品浪费培训
- 物体打击安全培训
- 农作物种子繁育员职业标准及考试试题答案
- 《最优化方法》课程教学大纲
- 《辅行诀》中研院打印本(1975年)
- 鹅卵石采购合同
- 《蜻蜓介绍》课件
评论
0/150
提交评论