Python进阶---面向对象第二弹】的更多相关文章

python类的继承原理 一.类的继承顺序 class A(object): def test(self): print('from A') passclass B(A): # def test(self): # print('from B') passclass C(A): # def test(self): # print('from C') passclass D(A): # def test(self): # print('from D') passclass E(B): # def t…
目录 6. 面向对象的三大特性 6.1 封装 6.1.1 私有 private 6.1.2 受保护 protected 6.1.3 公开 public 6.2 继承 6.2.1 继承的概念与作用 6.2.2 继承与被继承 6.2.3 继承的特征 6.2.4 继承的查找顺序问题 6.2.5 super 6.2.6 单继承与多继承 6.2.7 菱形继承(钻石继承)问题 6.2.8 构造函数 6.3 多态 6.3.1 多态的概念 6.3.2 多态与多态性 6.3.3 Mixin 设计模式 6.3.4…
Python的面向对象 一.面向过程与面向对象的对比 面向过程的程序设计的核心是过程(流水线式思维),过程即解决问题的步骤,面向过程的设计就好比精心设计好一条流水线,考虑周全什么时候处理什么东西. 优点是:极大的降低了程序的复杂度 缺点是:一套流水线或者流程就是用来解决一个问题,生产汽水的流水线无法生产汽车,即便是能,也得是大改,改一个组件,牵一发而动全身. 应用场景:一旦完成基本很少改变的场景,著名的例子有Linux內核,git,以及Apache HTTP Server等. 面向对象的程序设计…
[TOC] 接上一篇 [Mardkown] 03 进阶语法 第一弹 8. LaTeX 8.1 相关介绍 TeX:学术排版 LaTeX:相当于 TeX 的简化版本:对公式编辑精细至像素级别 MathJax:相当于 LaTeX 的简化版本,用于显示数学表达式式 Markdown 不支持 TaTeX 所有的语法,对数学公式的支持比较好 8.2 用法 \(+ 编辑内容 +\) 示例(我之前的那篇<质数>有提到勒让德的"素数定理",借用一下该公式) \pi(x) = \int_0^x…
Python对象中一些方法 一.__str__ class Teacher: def __init__(self,name,age): self.name=name self.age=age self.courses=[] def teach(self): print('%s teach' %self.name) def __str__(self): return '<name:%s age:%s>' %(self.name,self.age) class Course: def __init…
1.Python多线程.多进程 目的提高并发 1.一个应用程序,可以有多进程和多线程 2.默认:单进程,单线程 3.单进程,多线程 IO操作,不占用CPU python的多线程:IO操作,多线程提供并发 计算性操作 多进程提高并发 4.GIL,全局解释器锁 总结: 多进程,多线程,提供并发 IO密集型:多线程 计算密集型:多进程 2.threading模块 threading模块对象 描述 Thread 表示一个线程的执行的对象 Lock 锁原语对象 RLock 可重入锁对象.使单线程可以再次获…
Python 面向对象 面向过程 把完成某个需求的所有步骤,从头到尾逐步实现 根据开发需求,将某些功能独立的代码封装成一个又一个函数 最后完成的代码,就是顺序地调用不同的函数 面向过程特点: 注重步骤过程,不注重职责份工 如果需求复杂,代码很复杂 开发复杂项目,没有固定套路,开发难度大 面向对象特点 注重对象和职责,不同的对象承担不同的职责 更加适合对复杂需求变化,时专门应对复杂项目开发,提供的固定套路 需要在面向过程基础上,再学习一些面向对象语法 类,对象 类是图纸,是模板 对象是根据图纸制作…
类的成员 类的成员可以分为三类:字段.方法.属性 一:字段: 普通字段和静态字段,他们在定义和使用中有所区别,而最本质的区别是内存中保存的位置不同 普通字段属于对象 静态字段属于类 字段的定义和使用 class Province: # 静态字段 country = '中国' def __init__(self,name): # 普通字段 self.name = name # 直接访问普通字段 obj = Province('北京') print obj.name # 直接访问静态字段 print…
6.类属性和实例属性名字冲突怎么办 修改类属性会导致所有实例访问到的类属性全部都受影响,但是,如果在实例变量上修改类属性会发生什么问题呢? class Person(object): address = 'Earth' def __init__(self, name): self.name = name p1 = Person('Bob') p2 = Person('Alice') print 'Person.address = ' + Person.address p1.address = '…
1.初始化实例属性 #!/usr/bin/env python # -*- coding:utf-8 -*- __author__ = 'ziv·chan' #定义Person类的__init__方法,除了接受 name.gender 和 birth 外,还可接受任意关键字参数, #并把他们都作为属性赋值给实例. class Person(object): def __init__(self,name,gender,age,**kw): self.name = name self.gender…