摘要: 1.捕获所有类型异常 即便 Python 程序的语法是正确的,在运行它的时候,也有可能发生错误。运行期检测到的错误被称为异常。 大多数的异常都不会被程序处理,都以错误信息的形式展现在后台 """ 异常机制 异常:不正常事件 """ try: num = int(input("请输入一个数字:")) 阅读全文
posted @ 2022-04-03 22:10 风中的琥珀 阅读(11) 评论(0) 推荐(0)
摘要: """ 在某些情况下,我们多次创建实例希望指向的是同一个对象,比如回收站,每次用的时候不要创建多个 """ class Box: # 定义类属性保存引用 __instance = None # 定义类属性保存init方法是否执行 __init_flag = False def __new__(cls 阅读全文
posted @ 2022-04-03 16:23 风中的琥珀 阅读(65) 评论(0) 推荐(0)
摘要: """ __new__方法是一个类在实例化的时候会被自动调用的,没有写会默认调用父类的__new__方法 这个方法其实就是为了完成对象的创建,所以如果说需要重写__new__方法的时候,一定要调用一下父类的__new__ """ class Test: def __init__(self): pri 阅读全文
posted @ 2022-04-03 16:10 风中的琥珀 阅读(41) 评论(0) 推荐(0)
摘要: # 类对象 class Tools: # 定义类属性 num = 0 def __init__(self,name): # 实例属性 self.name = name # 定义了一个类方法 装饰器 @classmethod def add_num(cls): # cls 指向内存中的类对象 cls. 阅读全文
posted @ 2022-04-03 16:08 风中的琥珀 阅读(29) 评论(0) 推荐(0)
摘要: """ 基于弱数据类型语言的特性,多态不是太明显 定义的时候不确定调用哪个类里面的方法,而是执行的时候才确定 """ class Animal: def introduce(self): # 方法用于自我介绍 print("我是一只神奇的动物,感谢各位的关照!") class Dog(Animal) 阅读全文
posted @ 2022-04-03 15:34 风中的琥珀 阅读(34) 评论(0) 推荐(0)
摘要: """ 多继承 1 可以让子类继承多个父类的方法还有属性 2 多继承需要注意对象调用的顺序 __mro__ 查询对象调用的顺序 """ class A: def test(self): print(" A ") class B: def test(self): print(" b ") class 阅读全文
posted @ 2022-04-03 15:29 风中的琥珀 阅读(50) 评论(0) 推荐(0)
摘要: """ 子类不能访问父类的私有属性和私有方法 """ class A: def __init__(self): # 初始化信息 self.name = "老王" self.__age = 18 def __eat(self): # 私有方法 print("私有方法eat{}{}".format(se 阅读全文
posted @ 2022-04-03 15:26 风中的琥珀 阅读(56) 评论(0) 推荐(0)
摘要: class Animal: def drink(self): print("喝") class Dog(Animal): def drink(self): # 这是子类特有的需求 print("这只狗在疯狂的吃东西") # 调用父类的方法,可以使用super super().drink() # 也可 阅读全文
posted @ 2022-04-03 11:53 风中的琥珀 阅读(222) 评论(0) 推荐(0)
摘要: """ 继承具有传递性,可以使用父类,也可以使用父类的父类等等 即子类可以使用父类的属性或方法 注意:object是所有类的父类 """ class Animal(object): def eat(self): print("吃") class Dog(Animal): def brak(self) 阅读全文
posted @ 2022-04-03 11:46 风中的琥珀 阅读(45) 评论(0) 推荐(0)