python中面向对象-01

1、面向对象概念
面向:面对的是谁,面对的单位是谁
对象:生活中的对象,男朋友、女朋友,一个具体的事物
OOP(Object Oriented Programming)
类和对象
类:人类,狗类,一群具有相似特征的事物的统称
类是一个概念,是一个统称,不是具体的事物
对象:王帅 具体的事物
电脑类 王帅的电脑
手机类 我女朋友的iphonex
对象必须精确到某一个具体的事物
宝马 你的宝马
总统 特朗普
字符串、列表、字典:这些都是类的概念
变量:就是其具体的对象
官方概念
类:对象的抽象
对象:类的具象
2、面向过程和面向对象
以前咱写的代码都是面向过程的
面向过程:思维方式是数学逻辑,第一步要干什么,第二步要干什么
函数:函数式编程,这是你跨入面向对象的第一步
面向对象:首先写一个类,然后使用这个类创建一个对象,创建对象的过程,也称之为类的实例化,然后让对象调用对应的方法即可。思维方式是生活逻辑
娶媳妇,盖房子
面向过程:
(1)买砖
(2)打地基
(3)开始盖
(4)装修
(5)娶媳妇
面向对象:体现在生活中,写的代码会非常的简介
(1)包工头,盖房子
(2)装修工人,搞装修
(3)找媳妇,自己上吧
所谓的面向对象就是在函数的基础上又封装了一层,使用你用起来更加的简介,逻辑更加的清晰
在Python,要记住一句话,万物皆对象

面向对象三大特点:封装、继承、多态
    封装:类里面要写变量(成员属性 property)、函数(成员方法 method)
    继承:子类继承父类
    多态:多种形态
c++ java c# js python php
c语言,结构体

以后写代码的逻辑:
    上来封装一个类(里面就是一个一个函数的实现),通过类实例化对象,通过对象调用方法即可

3、类的简单使用
类的语法格式:
(1)class关键字开头
(2)类名要用大驼峰
(3)写成员方法的时候,注意第一个参数必须写self
(4)创建对象,就是 类名()
(5)对象调用方法 对象名.方法名()
成员属性
可以创建对象后,给对象动态添加属性,但是动态添加属性之后,每个对象的属性都不一样,不方便管理,所以这种动态添加属性的方式一般不用
4、构造方法和self
构造方法:在创建对象的时候调用的方法,是系统自动调用的
init
在Python中以下划线开头的方法叫做魔法方法,魔法方法不用手动调用,系统会在特定的时机自动调用这些方法
构造方法作用:
在这里会给对象动态的添加属性,并且将属性的值通过参数传递过来,
其它成员方法中也可以动态添加属性,但是为了代码结构清晰,我们将属性都写到构造方法中
self作用:
在其它的成员方法中,都可以直接通过 self.成员属性 直接访问成员属性
在其它的成员方法中,也都可以直接通过 self.成员方法() 来直接调用其它成员方法

小练习
两个人,一个叫老王,40,165  一个叫老赵,30,175
上山砍柴的方法
下河游泳的方法
隔壁吃鱼的方法

我叫老王,我今年40,我身高165,我喜欢上山砍柴
我叫老王,我今年40,我身高165,我喜欢下河游泳
我叫老王,我今年40,我身高165,我喜欢隔壁吃鱼
我叫老赵,我今年30,我身高175,我喜欢上山砍柴
我叫老赵,我今年30,我身高175,我喜欢下河游泳
我叫老赵,我今年30,我身高175,我喜欢隔壁吃鱼

5、打印对象
str 魔法方法,当打印对象的时候,会自动调用这个方法,这个方法必须返回一个字符串,然后当打印对象的时候,就会打印这个字符串,这个字符串一般都格式为当前对象的一些信息
6、对象传参
老王开车,对象作为一个参数进行传递
构造方法传参
成员方法传参

1、高阶函数
map\filter\reduce\sorted

猜你喜欢

转载自blog.csdn.net/zangshuge/article/details/81667719