Python核心阶段也是重要的阶段,面向对象编程。从以下皆方便讲解
一、基本概念
1、什么事对象?
概念的定义:万物皆对象
对象是具体物体:拥有属性和行为,把许多零散的东西,封装成一个整体。
举例:
属性:姓名 年龄 体重 身高。。。
王二小
行为:走路 吃饭、放养 。。。
2、在Python中的体现:python是一门特别彻底的面向对象编程(OOP)的语言。
其他语言:
基本数据类型: int float bool。。。
对象类型: String Array
python对象类型:int float bool list
3、面向过程和面向对象:都是一种解决问题的思路
面向过程:在解决问题的时候,关注的是解决问题的每一个的过程(步骤)
面向对象:在解决问题的时候,关注的是解决问题所需要的对象。
举例子:做好饭之后洗碗
面向过程:洗菜 点火到油 放菜 翻炒,盛出。放水、放碗、倒洗洁精、擦干水、摆放好
面向对象:
你的对象:技能1做菜:洗菜 点火到油 放菜 翻炒,盛出
技能2洗碗:放水、放碗、倒洗洁精、擦干水、摆放好
你的对象:技能1做菜:
放菜、辅料
自动炒菜机 搅拌、翻炒、检测火候
盛出
技能2洗碗:
放水、放碗
自动洗碗机 倒洗洁精、擦干水
摆放好
对比:
1、面向对象和面向过程都是解决问题的一种思路,面向对象本身是面向过程的封装
2、面向过程编程最重要是什么?
按照步骤划分,把一个任务,分解成具体的每一个步骤
3、面向对象最重要的是什么?
按照功能对象进行划分,找到对象,确定对象属性和行为。
4、如何从面向过程的编程过道到面向对象的编程?
一、列举出一个任务的具体实现步骤
二、试图分离这些实现步骤中功能代码块
三、讲这些功能代码块,划分到某一个对象中
四、根据这个对象以及对应的行为,抽象出对象类。设计类
4、类
4.1 类的概念:某一个具体对象特征的抽象
举例子:张三这个具体的人
属性:身高 年龄 体重
行为:吃饭吧唧嘴、喝水放白糖、嫖;不给钱
抽象出来的类:不良青年
属性:身高 年龄 体重
行为:吃、喝、嫖
4.2 作用
根据抽象的类,生产具体的对象
例如:
类:不良青年:属性和行为
对象:张三、李四 王五,他们具有不同的属性和行为
4.3 类的组成
名称
属性
方法
注意:以上的属性和方法,都是抽象的概念,在生产对象后,对象才拥有具体的属性值和方法实现
4.4 生活中类的案例映射
类: 钱
对象:具有一毛 五毛的 一块的等
4.5 对象和类的关系:
对象->抽象->类->实例化->对象
二、面向对象在Python中的实现
1、怎样定义一个类?
class 类名:
pass
class Person:
pass
2、怎样通过类,创建一个对象
在内存中的体现形式。下面是内存图
3、属性相关
3.1、属性和变量的区别及判定依据?
区别:
概念:
**变量是可以变的量值
属性是属于某个对象特性**
访问权限:
变量是根据不同的位置,存在不同的访问权限。全局变量和局部变量
属性:只能通过对象来进行访问
判定依据:是否存在宿主。宿主的理解类的名
3.2、对象属性:操作对象的属性,增删改查
怎样增加一个对象拥有一些属性?
1、直接通过对象,动态添加
语法结构:对象.属性 = 值
# 1 定义一个类
class Person:
pass
# 2 根据类,创建一个对象
p = Person()
# 3 给p 对象 增加一些属性
p.name = "zhangsan"
# 验证是否添加成功
print(p.name)
# dict中包含类中所有属性
print(