目录
3.7 内置函数
3.8 面向对象
3.8.1 面向对象介绍
3.8.2 类和对象
3.8.2.1 类的组成部分
3.8.2.2 定义类和对象
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 文档
-
面向过程:根据业务逻辑从上到下写代码
-
函数式:将某功能代码封装到函数中,日后便无需重复编写,仅需要调用函数即可
-
面向对象编程:将数据与函数绑定到一起,进行封装,这样能够更快速的开发程序,减少了重复代码的重写过程
-
类是具有一组相同相似特征【属性】和行为【方法】的一系列对象的结果
-
对象则是根据模板创建的实例,通过实例化对象可以执行类中的函数
-
类(class)有三部分组成
-
类的名称
-
类的属性
-
类的方法:允许进行的 *** 作和方法
-
#定义一个类 #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 pass3.8.2.4 init方法
-
init(self)方法,初始化方法,实例化方法,实例化对象的时候自动调用,完成一些初始化设置。
-
__ init __(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 进程已结束,退出代码为 03.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关键字
注意:在这--等于Pycharm中 __ 因为作者使用markdown又恰恰是关键字,所以十分抱歉。
-
在Python中,有一些内置好的特点的方法,方法名是“--xxx--”,在进行特定的 *** 作时会自动被调用,这些方法称之为魔术方法。
-
举例
-
--init--方法:初始化一个类,在创建实例对象为其赋值时使用。
-
--str--方法:在将对象转换成字符串 str(对象) 测试的时候,打印对象的信息
-
--new--方法:创建并返回一个实例对象,调用了一次,就会得到一个对象
-
--class--方法:获得一致对象的类(对象--class--)
-
--del--方法:对象在程序运行结束后进行对象销毁的时候调用这个方法,来释放资源
-
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)