1、自定义异常类

class ShortIntegerException(Exception):def __init__(self,length,atleast):Exception.__init__(self)self.length=lengthself.atleast=atleast
try:i=input("Please input a number:")if len(i)<5:raise ShortIntegerException(len(i),5)else:print("Not Exception")
except EOFError:print("You inter an EOF sign")
except ShortIntegerException as ex:print("ShortIntegerException:length is %d,at least is %d"%(ex.length,ex.atleast))


2、try…except…处理只允许输入int型数字

while True:x=input("Please input a number:")try:x=int(x)print("You have input {0}".format(x))breakexcept Exception as ex:print("Format error")


3、处理带参Exception

try:raise Exception("EEE","LLL","FFF")
except Exception as ex:print(type(ex))for i in ex.args:print(i)


4、try…except…else处理输入列表合法下标

lt=['Z','L','M']
while True:n=input("Please input a subscript:")try:n=int(n)print(lt[n])except:print("subscript must in [-3,2]")else:break


5、try…except…else处理两数相除

try:a=input("Please input a to divide:")b=input("Please input b to divide:")c=float(a)/float(b)
except ZeroDivisionError:print("divisor can't be zero")
except TypeError:print("number Format is error")
except  NameError:print("variable is not exist")
else:print(a+"/"+b+"=",c)


6、处理带有多个except的异常

try:f = open('myfile.txt')s = f.readline()i = int(s.strip())f.close()
except (OSError, ValueError,RuntimeError, NameError):pass

7、try…except…finally结构,无论是否有异常都会执行,适用于关闭输入输出流,关闭数据库等

try:x=15/0
except:print(x)
finally:print("connection close")


8、断言语句

a,b=1,2
try:assert a==b,"a must be equal to b"
except AssertionError as ex:print(ex)


9、插入断点调试

import pdb
print("1")
x=1/0
print("2")
pdb.set_trace()
print("3")

python的自定义异常类,带参Exception,多个except,断言语句,断点,try...except,try...except...else,try...except...finally处理相关推荐

  1. Python基础教程:带参装饰器、生成器、迭代器、for循环迭代器、枚举

    带参装饰器 装饰器为被装饰的函数添加新功能,需要外界参数 outer参数固定一个,就是func inner参数固定和被装饰的参数固定,也不能添加新参数 可以借助函数的嵌套定义,外层给内层传参 def ...

  2. python如何定义类_python中定义类

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 类的定义python中,定义类是通过class关键字,例如我们定义一个存储学生信 ...

  3. 第三次学JAVA再学不好就吃翔(part98)--自定义异常类

    学习笔记,仅供参考,有错必纠 自定义异常类 自定义异常需要继承Exception或者是RuntimeException,如果我们的自定义异常类继承了Exception,则在方法上需要进行声明,如果我们 ...

  4. 【C++基础】自定义异常类与多重捕获

    目录 自定义异常类 构建过程 例:Vec3D类的数组下标越界的异常类 捕获多种无关异常 不同的异常的捕获 捕获派生异常 异常处理的次序 例子:多重捕获异常类 catch块的参数类型可以不用引用类型吗? ...

  5. C++ 异常,标准异常类,自定义异常类,throw,try,catch语句

    要学习异常,首先就要学习throw和try,catch语句: C++中try catch语句用法有非常灵活,有许多种组合: 这里简单介绍以下最基本的用法: 1. 格式 try{ ... } catch ...

  6. thinkphp6使用自定义异常类

    一.创建自定义异常类基类 app/lib/exception/BaseException.php <?php namespace app\lib\exception;use think\exce ...

  7. python 自定义异常类_python 自定义异常类的使用,继承Exception

    自定义异常类全部继承自BaseError import traceback class BaseError(Exception): def __init__(self): self.err_msg = ...

  8. python try exception类_Python异常-try、raise语句及自定义异常类

    一.try语句 #try/except try: pass except: pass try: pass except Exception: pass #try/except... try: pass ...

  9. [转载] python自定义异常类型和raise抛出异常

    参考链接: Python自定义异常 实际开发中,有时候系统提供的异常类型不能满足开发的需求.这时候你可以通过创建一个新的异常类来拥有自己的异常.异常类继承自 Exception 类,可以直接继承,或者 ...

最新文章

  1. 关于Github(1)
  2. JQuery 和JavaScript的区别
  3. Python 卡方检验演算
  4. nodejs实践录:ubuntu 16.04系统nodejs环境搭建
  5. linkedin api php,php – 如何使用linkedin api发送消息/通知?
  6. 人工智能的数学基础(一):绪论
  7. 0512 操作系统进程调度实验
  8. 2017年上海市计算机一级题库,2017年计算机一级题库及答案
  9. CPU内存管理和linux内存分页机制
  10. Spring生态系统(Spring可能大家都在用,很少去关注整体架构)
  11. 金融衍生品软件产品设计必备知识——上海黄金交易所产品概览
  12. java:/comp/env_启动日志中就出现[java:comp/env/spring.liveBeansView.mbeanDomain] not found这个日志...
  13. android 脚本swipe,appium1.1 版本使用 swipe 方法报错
  14. jquery 菜鸟教程
  15. 搭建Ubuntu 10.04系统(嵌入式开发)
  16. 为什么计算机集群叫云,为什么叫云计算?
  17. 为什么很多人开始反对996了?
  18. SuperVariMag 超导磁体系统 — SVM 系列
  19. oracle数据泵的原理,oracle 数据泵 详解
  20. mysql8笔记本蓝屏,开机显示0x0000007b蓝屏bios设置

热门文章

  1. 拿着 22 万美元年薪,混得还不如实习生?
  2. Python 大数据分析疫情:如何实现实时数据爬取及 Matplotlib 可视化?
  3. 2.7 亿学生宅家上课,家长有意见了......
  4. 苹果十年,焦虑在哪?
  5. 程序员构建总是出问题,怎么办?
  6. 微信推出“腾讯QQ”小程序;马化腾又要发红包;GitLab 12.5 稳定版发布| 极客头条...
  7. Kotlin 势必取代 Java?
  8. Google 员工公开 Windows 10 零日漏洞隐藏 Bug!
  9. 所有的 iPhone 和高端 Android 设备都被破解了!
  10. 为什么雷军指责“华为不懂研发”?| 畅言