摘要:
异常分为两类,可预知和不可预知。 错误发生的条件如果是可以预知的,此时应该用if判断去预防异常 错误发生的条件如果是不可预知的,此时应该用异常处理机制,try...except 自定义异常 阅读全文
摘要:
一切皆对象 可以被引用 x = obj 可以当做参数传递给函数 可以当做函数的返回值return 可以当做容器的元素 l = [obj1,obj2] 用type产生类 # 类的三个特性 类名 基类(类的父类) 类的名称空间 # exec内置方法概述 # exec(str,globals,locals) exec在globals的作用域执行str代码,将执行产生的变量放到局... 阅读全文
摘要:
非绑定方法 没有自动传值的功能 @staticmethod 绑定方法 绑定给谁就给谁调用,调用时会自动将调用者作为第一个参数传递给函数 1.绑定到对象的方法(不被任何装饰器装饰的函数) 2.绑定到类的方法 @classmethod 装饰的函数 class A: def __init__(self, name): self.name = name d... 阅读全文
摘要:
组合 :对象1的属性是对象2,对象1就拥有了对象2的数据和函数属性,这就是组合。 # A类型和B类型没有共性,不可以继承,但是A有B的特性,比如A是人,B是家,A和B没有继承关系,但是人有家,A有B的关系,那么就可以把B的属性都给A用 class people: def __init__(self,name,age): self.name = name ... 阅读全文
摘要:
隐藏属性 # 申明类时,数据属性或者函数属性,在属性名称前加上两个下划线,就实现了属性隐藏,但在python里不存在绝对的隐藏,它只是在申明的时候定义了它的调用方式。 class A: __country = "china" def __def(self): print(self.__country) a = A() print(a.__country)... 阅读全文
摘要:
继承 人类 -> 男人类/女人类 派生 就是在父类的基础上,子类有自己的数据或方法属性,这就是派生 子类拥有父类以及祖类(父类的父类,没上线,可以一直往上找)的一切属性(数据/方法属性),属性查找顺序,从子类本身一直往上找 class a: def f1(self): print("from a f111") def f2(self): ... 阅读全文
摘要:
面向过程概述 定义:指解决问题的步骤,第一步第二步一直走下去,直到解决问题。好比流水线,是一种机械式的思维。 优点:复杂问题流程化,进而简单化(一个复杂的问题,分成一个个小的步骤去实现,实现小的步骤将会非常简单) 缺点:一旦解决问题的步骤都确定好了后,不好扩展,好比如体制化后要改革非常难,改其中一个 阅读全文