Python学习之面向对象(一)】的更多相关文章

一.类的特殊成员 我们在Python学习之==>面向对象编程(一)中已经介绍过了构造方法和析构方法,构造方法是在实例化时自动执行的方法,而析构方法是在实例被销毁的时候被执行,Python类成员中还存在着一些具有特殊意义的方法,下面我们来一一介绍一下: 1.__doc__ 表示类的描述信息 class Foo: ''' 描述类信息 ''' def func(self): pass print(Foo.__doc__) # 描述类信息 2.__module__ 和  __class__  __mod…
学习了一周的Python,虽然一本书还没看完但是也收获颇多,作为一个老码农竟然想起了曾经荒废好久的园子,写点东西当做是学习笔记吧 对Python的语法看的七七八八了,比较让我关注的还是他编程的思想,那种和C语言不同的感觉 首先是面向对象的概念: 在Python中一切皆对象,因此包括类,类型,以至于函数都是对象,每个对象都有自己的一块空间用于存放他的东西,这个概念是之前的C语言编程中一直没有的概念.因此类生成对象的过程并不是类的实现,而是一个可以生成对象的对象用他方法(也可以说是构造函数)生成了一…
 简介 到目前为止,我们的编程都是根据数据的函数和语句块来设计的,面向过程的编程.还有一种我们将数据和功能结合起来使用对象的形式,使用它里面的数据和方法这种方法叫做面向对象的编程. 类和对象是面向对象编程的两个重要方面.对于类和对象的关系,举个例子就像学生和小明同学的关系一样.学生(类)是一个拥有共同属性的群体,小明同学(对象)是其中一个有自己特性的个体. 对于一个对象或类的变量被称为域,函数被称为类或对象的方法. 域有两种类型--属于每个对象或属于类本身,分别成为实例变量和类变量. 类使用cl…
### 面向对象三大特性值继承#### 1.什么是继承 继承是一种关系,必须存在两个对象才可能产生这种关系,在现实生活中的继承,王思聪可以继承王健林的财产 被继承的成为父,继承的一方成为子 在程序中,继承指的是类与类之间的关系 #### 2.为什么要使用继承 在生活中,通过继承 子可以直接享受父提供的内容,例如财产 在程序中,通过继承可以直接使用父类已有的代码 #### 3.怎么使用 在子类中,类名后面加上括号,写上父类的名称即可 在python中,一个子类,可以有多个父类,多个父类在括号中用逗…
开始学习面向对象,可以说之前的学习和编程思路都是面向过程的,从上到下,一步一步走完. 如果说一个简单的需求,用面向过程实现起来相对容易,但是如果在日常生产,面向对象就可以发挥出他的优势了. 程序的可扩展性,代码的可读性,以及后期的优化和二次开发,都是面向过程不可相比的,下面整理一下知识点. 类: #Authon Ivor class dog(object): #公有变量,如果有私有变量,优先调用私有,如果没有调用公有 age = 8 def __init__(self,name,type): s…
python的面向对象和以前学的c++,Java都是一般,大同小异,面向对象基础先谈谈类的构造,编写,属性和方法的可见性等等 1.定义类,创建和使用对象 #定义类 class Student(object): #类student的初始化方法 def __init__(self,name,age): self._name=name self._age=age def study(self,cname): print("%s正在学习:%s"%(self._name,cname)) def…
面向对象编程--Object Oriented Programming,简称OOP,是一种程序设计思想.OOP把对象作为程序的基本单元,一个对象包含了数据和操作数据的函数. 本节对于面向对象的概念不做展开说明.本节主要内容是Python里如何使用面向对象编程. 分下面几部分: 1.类的格式 2.类的实例 3.类的封装 4.继承和多态 类的格式 下面是一个示例: student.py class Student(object): def __init__(self, name, score): s…
-------------------类属性和实例属性关系------------------- 1.类属性和实例属性关系     1.实例属性         实例对象独有的属性     2.类属性         类名访问类属性     3.实例中无同名属性时,可访问到类属性,当定义同名实例属性时,则无法访问     4.常用的查找指令         1.vars :查看实例内属性         2.dir :显示类属性和所有实例属性         3.type :显示类型   ---…
面向对象 封装思想:将同一类的函数函数封装到同一个py文件中,方便调用 面向对象也有封装的作用,将同一类的函数封装到一个类中 多态(鸭子模型):多种类型/多种形态 #,什么事鸭子模型 对于一个函数,python对于参数的类型不会限制,传入参数时就可以是各种类型,但是在函数中如果有类似于索引等特有方法,就会对传入的参数类型有一个限制(类似于字符串的.append.send方法) 类似于上述的函数我们认为只要能呱呱叫的就是鸭子(只要有.send方法,就是我们要想的类型) # Python def f…
面向对象 类:成员变量(属性) 方法(操作成员变量) 出一个场景:玩过游戏.主人公,进入了一个场景,有10个小怪物是一样的.有攻击力,血(100格).如果小怪物有多个数值需要管理,小怪物的血量.小怪物出现在屏幕的地点. {"blood":100,"location":"10,10"}[[100,(10,10)]] 10 个小怪物.记住10个小怪物所有的变量在哪里,怎么操作? 写一些函数,来操作这些数据.函数你实现的时候,你觉得需要实现哪些功能?…
多重继承 Python里允许多重继承,即一个类可以同时继承多个类: class Mammal(Animal): pass class Runnable(object): def run(self): print('Running...') class Dog(Mammal, Runnable): pass 这样,Dog同时拥有Mammal.Runnable的属性和方法. __slots__限制实例的属性 由于类的实例可以动态绑定新的属性,有时候我们不希望这样,可以通过__slots__进行限制:…
面向对象的三大特性 一.封装 把数据.值.变量放入到对象中 构造方法 _init_方法 特殊作用: 在 obj = 类名() 执行时: 内部自动执行两个步骤: 1.创建对象 2.通过对象执行类中的一个特殊方法(_init_方法) class info: def __init__(self,name,age): self.name = name self.age = age self.gender = '男' def show(self): print(self.name,self.age,sel…
该篇主要是针对面向对象的细讲,包括类的多重继承,方法的重写,析构函数,回收机制进行讲解 #该类主要是讲述python面象对象的一些特征,包括继承,方法的重写,多态,垃圾回收 class person(object):    name = ''    age = '' def __init__(self,name,age, **kwargs):        self.name = name        self.age = age        return super().__init__(…
面向对象进阶 静态方法 一种普通函数,就位于类定义的命名空间中,它不会对任何实例类型进行操作.使用装饰器@staticmethod定义静态方法.类对象和实例都可以调用静态方法: class Foo: def __init__(self, name): self.name = name def hi(self): print self.name @staticmethod def add(a, b): print a + b if __name__ == '__main__': foo01 = F…
好激动,学了四个月的面向对象,我终于勉勉强强的把作业做完了,现在来重构我的面向对象的知识! 面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象:对函数进行分类和封装,让开发“更快更好更强…”反正是类似于函数,但是比函数更牛逼 先看一段代码 while True: if cpu利用率 > 90%: #发送邮件提醒 连接邮箱服务器 发送邮件 关闭连接 if 硬盘使用空间 > 90%: #发送邮件提醒 连接邮箱服务器 发送邮件 关闭…
一.面向对象的编程 面向对象程序设计--Object Oriented Programming,简称oop,是一种程序设计思想.二.面向对象的特性类:class类,对比现实世界来说就是一个种类,一个模型.一个类即是对一类拥有相同属性的对象的抽象.蓝图.原型.在类中定义了这些对象的都具备的属性(variables(data)).共同的方法. 对象:object对象,也就是指模型造出来的具体的东西.一个对象即是一个类的实例化后实例,一个类必须经过实例化后方可在程序中调用,一个类可以实例化多个对象,每…
面向对象(简写:OOP) 面向对象编程定义:利用类和对象来创建各种模型,来实现对真实世界的描述. 优点:使程序更容易理解和维护以及扩展代码. 类定义:用来描述具有相同的属性和方法的对象的集合.(简单讲就是个模板) 实例化定义:创建一个类的实例,类的具体对象. 对象定义:通过类定义的数据结构的实例 举例:一个最简单最小结构的类写法如下: class class_name(object):    print('bababa') 举例一个正常类的写法: class 类名称(object):    de…
面向对象三大特性 1.三大特性? 继承,多态,封装 2.什么是继承? 类的继承和现实生活中的父与子,继承关系是一样的,父类为基类. python中的类继承分为:单继承和多继承 3.举例说明 class Dad: money = 100 def __init__(self,name): self.name =name print(name) def hit(self): print('%s 正在打孩子' %self.name) class Son(Dad): pass s1 = Son('abc'…
目录 __main__,__name__ __module__,__class__ __init__ __del__ __repr__,__str__ __mro__ __call__ __new__ __doc__ __hasattr__,__getattr__,__setattr__ __import__ __dir__ ,__all__ __enter__,__exit__ 其他函数 面对对象 Object Oriented Programming,简称oop,面向对象是种程序设计思想,我…
6.2 类的空间角度研究类 6.2.1 添加对象属性 [总结]对象的属性不仅可以在__init__里面添加,还可以在类的其他方法或者类的外面添加. class A: address = '召唤师峡谷' def __init__(self, name): self.name = name def func(self,type): self.type = type # 类的外部可以添加 obj = A('盖伦') obj.age = 20 print(obj.__dict__) # 在类的内部可以添…
第六章 面向对象 6.1 面向对象的初识 6.1.1 什么是面向对象 面向过程式编程: ​ 好处:出色的完成所有的需求 ​ 坏处:凡是更改或者增加一条需求,可能整个项目都随之改变 面向对象式编程: 类:具有相似功能和特性的一类事物 对象:类的具体体现 类的优点: ​ 类是相似功能特征的集合,可以让代码更清晰,更合理化 ​ 类是一个公共的模板,对象是从这个模板产出的实体 6.1.2 类 结构 class 类名: #类名要具有意义,一般使用驼峰体命名 #类的描述 类的变量 类的函数 其中: 类的变量…
面向对象进阶当然是要谈谈面向对象的三大特性:封装.继承.多态 @property装饰器 python虽然不建议把属性和方法都设为私有的,但是完全暴露给外界也不好,这样,我们给属性赋值的有效性九无法保证,因此,为了使得对属性的访问既安全又方便,可以通过属性的getter(访问器)和setter(修改器)方法进行对应的操作,在python中,可以考虑使用@property包装器来包装getter和setter方法 class Person(object): def __init__(self,nam…
1.类和实例 1.1类的定义 类的定义使用class关键字,其后紧跟类名(通常大写开头),紧接着是(object),object是该类继承的类名,没有就继承object类. 实例化时就是类名+(),有参数需要传入参数. class Student(object): pass bart = Student() 类的属性定义在_init_方法中(相当于java的构造方法),该方法的第一个参数永远是self,在实例化时必须传入相应的参数(除self外) class Student(object): d…
1.栈与队列 栈:类似弹夹,先进后出 队列:类似水管,先进先出 class Stack(object): """ 先进后出 """ def __init__(self): self.data_list=[] def push(self,val): """ 向栈中压入一个数据(入栈) """ self.data_list.append(val) def pop(self): "&…
成员修饰符 两种成员 - 公有成员 - 私有成员, __字段名 - 无法直接访问,只能通过内部方法来间接访问私有成员 简例:公有成员与私有成员  class Info: country = '中国' # 静态字段 __gender = '男' # 静态字段私有化 def __init__(self,name,age): self.name = name self.__age = age # age字段为私有的,外部无法直接访问 def show(self): return self.__age,…
面向对象 一.定义 面向对象:面向对象为类和对象之间的应用 class + 类名: #在类中的函数称作 “方法“ def + 方法名(self,arg): #方法中第一个参数必须是 self print(arg) return 1 #方法中的返回值 二.执行 面向对象的执行需要间接地访问函数(即方法) 对象 = 类名() # 创建出中间对象(对象.实例) 对象.方法名() # 通过中间对象来间接访问函数 简例:创建一个类并使用 class info: def show(self,arg): pr…
一.讲在前面 编程的世界中有三大体系,面向过程.面向函数和面向对象编程.而面向过程的编程就包括了面向函数编程,接下来说一下面向对象.假如 ,你现在是一家游戏公司的开发人员,现在需要你开发一款叫做<人狗大战>的游戏,你就思考呀,人狗作战,那至少需要2个角色,一个是人, 一个是狗,且人和狗都有不同的技能,比如人拿棍打狗, 狗可以咬人,怎么描述这种不同的角色和他们的功能呢?你搜罗了自己掌握的所有技能,写出了下面的代码来描述这两个角色.…
面向对象三大特点 - 封装:既是对数据结构的封装,有是处理数据的方法的封装. - 继承:强调的父子类的关系. - 多态:不同对象调用相同的方法,有不同的响应. 类的继承 - 相关概念 - 继承:父类的方法和属性,子类直接拥有,称为继承. - 派生:子类在父类的基础上衍生出新的特征(属性和行为). - 总结:其实他们是一回事,只是描述问题的角度不同(继承强调相同点,派生强调不同点) - 继承语法: # class Animal: # 当没有写父类时,默认继承自object class Animal…
面向对象 - 与面向过程对比 - 面向过程:数学逻辑的映射,学会做个好员工. - 面向对象:生活逻辑的映射,学会做个好领导. - 生活实例 - 类: 人 手机 电脑 - 对象: 习大大.普京 二狗的iphoneX 生辉桌上的电脑 - 官方定义 - 类:具有相同特征(属性和行为)事物的抽象 - 对象:某个类的具象 - 编程语言 - 类:是一种自定义的数据类型 - 对象:某个类类型的变量 面向对象语法 - 类的定义 class 类名: pass - 语法说明 - 定义类需要使用关键字class -…
面向对象设计 1.三大编程范式 --面向过程编程 --函数式编程 --面向对象编程 2.编程进化论 --编程最开始就是无组织无结构,从简单控制流中按步写指令 --从上述的指令中提取重复的代码快或逻辑,组织到一起,便实现了代码重用,且代码由无结构走向了结构化,创建程序的过程变得更具逻辑性 --我们定义函数都是独立于函数外定义变量,然后在作为参数传递给函数,这意味着:数据与动作是分离的 --如果我们把数据和动作内嵌到一个结构里面,那么我们就有了一个‘对象系统’ 3.定义 ---类:把一类事物的相同的…