2020.3.5 python异常,包

发布于 2020-03-05  43 次阅读


Table of Contents

python中出现异常,就会向上翻,破坏既定流程

python中异常的作用

可以传递数据,可以让错误的程序继续运行

重写类的加减乘除等等方法

python中可以重写复合运算符,算数运算符,反向算数运算符比较运算符
算数运算符:add,sub,mul,truediv,floordiv,mod,pow
方向算数运算符reverse:radd,rsub,rmul,rtruediv,rfloordiv,rmod,rpow
复合运算符:iadd,isub,imul,itruediv,ifloordiv,imod,ipow
比较运算符:lt,le,gt,ge,eq,ne

python中方法双下划线和类双下划线

什么时候抛出自定义异常

1.程序层层调用,return很麻烦
2.不能调用return返回错误信息

raise(可以手动抛出异常)

最常用的操作就是跨类返回数据

属性的语法

init中是self.age=age @property方法中是return self.__age

python中__new__和__init__

__new__才是真正的构造函数
1.__new__是object的方法
2.__new__中返回的是一个实例,供__init__使用。
3.__new__需要返回值,__init__不需要返回值(非None就报错)
4.__new__不常用,只有继承不可变对象(float)和用在元类,定制创建对象
元类:metaclass ,最难的魔术代码一般不会使用

python中自定义异常类就是在干什么?

封装错误的信息,里面只有数据,没有方法