栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python学习笔记(新手入门)(6)面向对象

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python学习笔记(新手入门)(6)面向对象

目录

3.7 内置函数

3.8 面向对象

3.8.1 面向对象介绍

3.8.2 类和对象

3.8.2.1 类的组成部分

3.8.2.2 定义类和对象

3.8.2.3 实例方法和属性

3.8.2.4 init方法

3.8.2.5 理解self

3.8.2.6 self传参问题

3.8.3 魔术方法


3.7 内置函数

内置函数就是Python安装后就自带的函数,我们可以直接去调用的函数。

本章节具体内容在下面官网中。

  • 官方文档地址内置函数 — Python 3.8.12 文档

3.8 面向对象

3.8.1 面向对象介绍
  • 面向过程:根据业务逻辑从上到下写代码

  • 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅需要调用函数即可

  • 面向对象编程:将数据与函数绑定到一起,进行封装,这样能够更快速的开发程序,减少了重复代码的重写过程

3.8.2 类和对象
  • 类是具有一组相同相似特征【属性】和行为【方法】的一系列对象的结果

  • 对象则是根据模板创建的实例,通过实例化对象可以执行类中的函数

3.8.2.1 类的组成部分
  • 类(class)有三部分组成

    • 类的名称

    • 类的属性

    • 类的方法:允许进行的操作和方法

3.8.2.2 定义类和对象
#定义一个类
 #class 类名:
 #   属性
 #   方法
 class Person:
     name = "Rany" #属性
     age = 19 #属性
     sex = "男" #属性
     #方法1
     def eat(self): 
         print("今天吃麻辣香锅")
         pass
     #方法2
     def sing(self):
         print("飞")
 #格式:对象名 = 类名()
 class Person:
     name = "Rany"
     age = 19
     sex = "男"
     def eat(self):
         print("今天吃麻辣香锅")
         pass
     def sing(self):
         print("飞")
 ​

 #创建一个对象
 #格式:对象名 = 类名()
 #创建一个duixiang对象,对象可以访问属性,调用方法。
 ex=Person() #创建对象
 ex.eat() #调用eat方法
 print(ex.sing())
 print("{}的年龄是{},性别是{}".format(ex.name,ex.age,ex.sex))
 

3.8.2.3 实例方法和属性
  • 在类的内部,使用def关键字可以定义一个实例方法,与一般函数不同,类方法必须包含参数 self ,且为第一个参数。

  • 实例发给发归于类的实例所有。

class Animal(object):
     #实例方法,使用def关键字来定义,第一个形参传实例对象本身,一般使用self作为第一个参数
     def test(self):
         print("我是一个实例方法")
         pass
     #一个类中可以有多个实例方法
     def show(self):
         print("Animal.show")
         pass
     pass
  • 属性:在类里面定义的变量【类属性】

  • 定义在方法里面使用self引用的属性称之为 实例属性【self.变量名 = 名称】

 class Animal(object): #定义一个类
 ​
     color = "黑色" #类属性
     
     def __init__(self):
         self.name = "haha" #实例属性
         pass
     pass

3.8.2.4 init方法
  • init(self)方法,初始化方法,实例化方法,实例化对象的时候自动调用,完成一些初始化设置。

  • __ init __(self)方法,在创建一个对象时默认被调用,不需要手动调用

  • 利用传参的机制,可以让我们定义功能更加强大,并且方便的类

3.8.2.5 理解self

self和对象指向同一个内存地址,可以认为self就是对象的引用。

 class Person:
     """
     定义类
     """
     def eat(self):
         """
         实例方法
         """
         print("self%s",id(self)) #打印self内存地址
         pass
     pass
 #Rany是一个新的实例化对象
 Rany = Person()
 print("Rany%s",id(Rany)) #打印Rany内存地址
 Rany.eat() #调用eat方法
 
#结果
 Rany%s 2578003235840
 self%s 2578003235840
 ​
 进程已结束,退出代码为 0

3.8.2.6 self传参问题
  • 所谓的self,可以理解为对象自己,某个对象调用其方法时,Python解释器会把这个对象作为第一个参数传递给self,所以开发者只需要传递后面的参数即可。

class Person:
     """
     定义类
     """
     def eat(self,food,name): #第一个参数self,引用food和name参数
         """
         实例方法
         """
         print("{}喜欢吃{}".format(name,food))
         pass
     pass
 #Rany是一个新的实例化对象
 Rany = Person()
 Rany.eat("麻辣香锅","rany") #调用eat方法并传入后面两个参数
  • self 只有在类中定义实例方法时才有意义,在调用时不需要传入第一个参数,而是由解释器自动的指向

  • self 的名称时可以更改的

  • self 指的是类实例对象本身,相当于java中的this关键字

3.8.3 魔术方法

注意:在这--等于Pycharm中 __ 因为作者使用markdown又恰恰是关键字,所以十分抱歉。

  • 在Python中,有一些内置好的特点的方法,方法名是“--xxx--”,在进行特定的操作时会自动被调用,这些方法称之为魔术方法。

  • 举例

    • --init--方法:初始化一个类,在创建实例对象为其赋值时使用。

    • --str--方法:在将对象转换成字符串 str(对象) 测试的时候,打印对象的信息

    • --new--方法:创建并返回一个实例对象,调用了一次,就会得到一个对象

    • --class--方法:获得一致对象的类(对象--class--)

    • --del--方法:对象在程序运行结束后进行对象销毁的时候调用这个方法,来释放资源

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/655932.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号