7多态与多态性
摘要:多态 多态指的是一类事物有多种形态,比如 动物有多种形态:人,狗,猪 多态性 一 什么是多态动态绑定(在继承的背景下使用时,有时也称为多态性) 多态性是指在不考虑实例类型的情况下使用实例,多态性分为静态多态性和动态多态性 静态多态性:如任何类型都可以用运算符+进行运算 动态多态性:如下 二 为什么要
阅读全文
6抽象类
摘要:接口与归一化设计 1.什么是接口 接口指的是:自己提供给使用者来调用自己功能的方式\方法\入口 2. 为何要用接口 接口提取了一群类共同的函数,可以把接口当做一个函数的集合。 然后让子类去实现接口中的函数。 这么做的意义在于归一化,什么叫归一化,就是只要是基于同一个接口实现的类,那么所有的这些类产生
阅读全文
1.类
摘要:什么是类 类是一系列对象相似的特征与技能的结合体 在现实世界中:肯定是先有对象,再有类 在程序中:务必保证先定义类,后产生对象 在程序中,务必保证:先定义(类),后使用类(用来产生对象) 注意: 类中可以有任意python代码,这些代码在类定义阶段便会执行,因而会产生新的名称空间,用来存放类的变量名
阅读全文
异常
摘要:什么是异常 异常就是程序运行时发生错误的信号(在程序出现错误时, 则会产生一个异常,若程序没有处理它,则会抛出该异常,程序的运行也随之终止) 错误分为两种: 1.语法错误(这种错误过不了python解释器的语法检测,执行前必须改正) 2.逻辑错误 异常的种类 在python中不同的异常可以用不同的类
阅读全文
元类的介绍
摘要:储备知识execexec(object,globals,locals) 参数1:字符串形式的命令参数2:全局作用域(字典形式),如果不指定默认使用globals()参数3:全局作用域(字典形式)。如果不指定默认使用locals().g={ 'x':1, 'y':2}l={}exec('''globa
阅读全文
10反射
摘要:好处一:实现可插拔机制 有俩程序员,一个lili,一个是egon,lili在写程序的时候需要用到egon所写的类,但是egon去跟女朋友度蜜月去了, 还没有完成他写的类,lili想到了反射,使用了反射机制lili可以继续完成自己的代码, 等egon度蜜月回来后再继续完成类的定义并且去实现lili想要
阅读全文
9绑定方法与非绑定方法
摘要:定义:在类内部定义的函数,分为两大类: 一:绑定方法:绑定给谁,就应该由谁来调用,谁调用就会把调用这当做第一参数自动传入 绑定到对象方法:在类内定义的没有被任何装饰器修饰的 绑定到类发方法:在类内定义的没有被装饰器classmethod修饰的方法 二:非绑定方法:没有自动传值这么一说,就类中定义一个
阅读全文
pycharm设置连接
摘要:https://blog.csdn.net/u013088062/article/details/50100121
阅读全文
8封装的意义和拓展性
摘要:先看如何隐藏 在python中用双下划线开头的方式将属性隐藏起来(设置成私有的) 这种自动变形的特点: 封装不是单纯意义的隐藏 封装方法的其他举例: 提示:在编程语言里,对外提供的接口(接口可理解为了一个入口),可以是函数,称为接口函数,这与接口的概念还不一样,接口代表一组接口函数的集合体。 封装与
阅读全文
property特性
摘要:什么是property property是一种特殊属性,访问他时会执行一段功能然后返回值 为什么要用property 将一个类的函数定义成特性以后,对象再去使用的时候obj.name, 根本无法察觉自己的name是执行了一个函数然后计算出来的, 这种特性的使用方式遵循了统一访问的原则 知识延伸 总结
阅读全文
鸭子类型
摘要:Python崇尚鸭子类型,即‘如果看起来像、叫声像而且走起路来像鸭子,那么它就是鸭子’ python程序员通常根据这种行为来编写程序。例如,如果想编写现有对象的自定义版本,可以继承该对象 也可以创建一个外观和行为像,但与它无任何关系的全新对象,后者通常用于保存程序组件的松耦合度。 例1:利用标准库中
阅读全文
4在子类中重用父类的方法或属性
摘要:[<class '__main__.C'>, <class '__main__.A'>, <class '__main__.B'>, <class 'object'>] #C.mro() c的查找顺序,新式类(python3特有) from A from B
阅读全文
3继承和派生
摘要:初识继承 什么是继承 继承指的是类与类之间的关系,是一种什么“是”什么的关系,继承的功能之一就是用来解决代码重用问题 继承是一种创建新类的方式,在python中,新建的类可以继承一个或多个父类,父类又可以成为基类或超类,新建的类称为派生类或子类 查看继承 经典类与新式类(关于新式类与经典类的区别,我
阅读全文
2类属性查找与绑定方法
摘要:类有两种属性:数据属性和函数属性 1、类的数据属性是所有对象共享的 2、类的函数数据是绑定给对象用的,称为绑定到对象的方法 类中定义的函数(没有被任何装饰器装饰的)是类的函数属性,类可以使用,但必须遵循函数的参数规则,有几个参数需要传几个参数 类中定义的函数(没有被任何装饰器装饰的),其实主要是给对
阅读全文
5组合
摘要:组合与重用性 软件的重用方式除了继承之外还有一种方式叫:组合 组合是指一个类以另一个类的对象作为数据属性,即称类的组合 组合与继承都是有效的利用已有的类的资源重要方式,但 二者概念和使用场景都不同 1.继承的方式 继承建立了派生类与基类之间的关系,他强调的是一种‘是’的关系 2.组合的方式 组合建立
阅读全文
软件开发目录规范
摘要:目录结构的作用: 1.可读性高 2.可维护性高 软件开发最基本目录: 1.log (日子目录) 2.conf(配置目录) 3.core 或者项目名(核心目录) 4.libs/modules(第三方库) 5.docs(文档库) 6.README(对软件的说明) 7.setup.py(一键装机) 目录组
阅读全文
如何使用类
摘要:类在定义阶段已经能执行 查看类的名称空间,print(类名.__dict__) {'__module__': '__main__', 'school': 'luffycity', 'learn': <function luffystudent.learn at 0x00000000021C97B8>
阅读全文
面向过程编程与面向对象优缺点
摘要:面向过程:是指解决问题的步骤,设计一天条流水线,机械的思维方式 优点:复杂问题流程化,进而简单化 缺点:可拓展性差 面向对象:对象就是特征和技能的结合体 优点:可拓展性强 缺点:编程复杂度高 应用场景:用户需求经常变化,互联网应用,游戏,企业内部应用 类:就是一系列对象相似特征与技能的结合体 强调:
阅读全文
生成器和迭代器的藕断丝连
摘要:生成器 如果列表元素可以按照某种算法推算出来,那我们是否可以在循环的过程中不断推算出后续的元素呢? 这样就不必创建完整的list,从而节省大量的空间。在Python中,这种一边循环一边计算的机制, 称为生成器:generator。 迭代器 可以被next()函数调用并不断返回下一个值的对象称为迭代器
阅读全文
三元运算
摘要:三元运算 三元运算又称三目运算,是对简单的条件语句的简写,如: 简单条件语句: 改成三元运算:
阅读全文