python面向对象程序设计

Carmen ·
更新时间:2024-09-20
· 801 次阅读

目录

面向对象和面向过程区别

类和对象

1.定义类

2.创建类的实例

3.创建类的成员并访问

4.创建用于计算的属性

5.继承的基本语法

6.方法重写

7.创建函数

8.调用函数

9.为参数设置默认值

10.返回值

11.匿名函数

面向对象和面向过程区别

面向过程程序设计:所谓的面向过程程序设计就是函数的定义和调用。面向过程是一种以事件为中心的编程思想,编程的时候把解决问题的步骤分析出来,然后用函数把这些步骤实现,在一步一步的具体步骤中再按顺序调用函数。

面向对象程序设计:(Object-oriented programming,OOP)是种具有对象概念的程序编程典范,同时也是一种程序开发的抽象方针。它可能包含数据、属性、代码与方法。对象则指的是类的实例。它将对象作为程序的基本单元,将程序和数据封装其中,以提高软件的重用性、灵活性和扩展性,对象里的程序可以访问及经常修改对象相关连的数据。在面向对象程序编程里,计算机程序会被设计成彼此相关的对象。

 类和对象 类(Class):定义了一件事物的抽象特点。类的定义包含了数据的形式以及对数据的操作。 对象(Object):是类的实例。

类(Class)定义了一件事物的抽象特点。类的定义包含了数据的形式以及对数据的操作。举例来说,“狗”这个类会包含狗的一切基础特征,即所有“狗”都共有的特征或行为,例如它的孕育、毛皮颜色和吠叫的能力。类可以为程序提供模版和结构。一个类的方法和属性被称为“成员”。 我们来看一段伪代码:

类狗 开始 公有成员: 吠叫(): 私有成员: 毛皮颜色: 孕育: 结束

对象(Object)是类的实例。对象有时会对应到现实世界中的事物,举例来说,一个图形程序可能有圆形、矩形与画面等对象,一个在线购物系统可能有购物车、顾客与产品等类。有时对象会表示更抽象的实体,比如一个被打开的文件或是一个提供美国惯用量测转换的服务。每个对象就是一个特定类的实例(例如,名称是“玛丽”的对象可能是类雇员的一个实例)。程序在面向对象编程当中被视为方法,变量被视为成员或属性。例如,“狗”这个类列举狗的特点,从而使这个类定义了世界上所有的狗。而莱丝这个对象则是一条具体的狗,它的属性也是具体的。狗有皮毛颜色,而莱丝的皮毛颜色是棕白色的。因此,莱丝就是狗这个类的一个实例。一个具体对象属性的值被称作它的“状态”。(系统给对象分配内存空间,而不会给类分配内存空间。这很好理解,类是抽象的,系统不可能给抽象的东西分配空间,而对象则是具体的。)

定义莱丝是狗 莱丝.毛皮颜色 : 棕白色 莱丝.吠叫() 1.定义类


在Python中,类的定义使用class关键字来实现,语法如下:

class ClassName:       '''类的帮助信息'''              # 类文档字符串       statement                # 类体


参数说明:

ClassName: 用于指定类名, 一.般使用大写字 母开头,如果类名中包括两个单词,第二个单词的首字母也大写,这种命名方法也称为“驼峰式命名法”,这是惯例。当然,也可根据自己的习惯命名,但是一般推荐 按照惯例来命名。 Statement:类体,主要由类变量(或类成员)、方法和属性等定义语句组成。如果在定义类时,没想好类的具体功能,也可以在类体中直接使用pass语句代替。   2.创建类的实例


class语句本身并不创建该类的任何实例。所以在类定义完成以后,可以创建类的实例,即实例化该类的对象。创建类的实例的语法如下:

classname(parameterlist)

其中,ClassName是必选参数,用于指定具体的类; parameterlist是可选参数,当创建一个类时,没有创建_ init_ 0方法, 或者_init_ ()方法只有一个 self参数时,parameterlist 可以省略。

3.创建类的成员并访问


所谓实例方法是指在类中定义的函数。该函数是一种在类的实例上操作的函数。实例方法的第一个参数必须是 self,并且必须包含一个self参数。创建实例方法的语法格式如下:

def functionName(self,parameterlist): block

参数说明:

functionName: 用于指定方法名, 一般使用 小写字母开头。 Self: 必要参数,表示类的实例,其名称可以是self 以外的单词,使用self只是一个惯例而已。 Parameterlist:用于指定除self参数以外的参数,各参数间使用逗号“,”进行分隔。 Block:方法体,实现的具体功能。

实例方法创建完成后,可以通过类的实例名称和点(.) 操作符进行访问,语法格式如下:

instanceName.functionName(parametervalue)

参数说明:

instanceName:为类的实例名称。 functionName:为要调用的方法名称。 Parametervalue: 表示为方法指定对应的实际参数,其值的个数与创建实例方法中parameterlist的个数相同。 4.创建用于计算的属性

通过@property创建用于计算的属性的语法格式如下:

@property def methodname(self): block

参数说明:

methodname: 用于指定方法名, 一般使用小写字 母开头。该名称最后将作为创建的属性名。 Self:必要参数,表示类的实例。 Block: 方法体,实现的具体功能。在方法体中,通常以returm语句结束,用于返回计算结果。 5.继承的基本语法


通过继承不仅可以实现代码的重用,还可以通过继承来理顺类与类之间的关系。在Python中,可以在类定义语句中,类名右侧使用一对小括号将要继承的基类名称括起来,从而实现类的继承。具体的语法格式如下:

class ClassName(baseclasslist): “类的帮助信息” # 类文档字符串 statement # 类体

参数说明:

ClasSName: 用于指定类 名。 Baseclasslist: 用于指定要继承的基类,可以有多个,类名之间用逗号“,”分隔。如果不指定,将使用所有Python对象的根类object。 .“类的帮助信息”:用于指定类的文档字符串,定义该字符串后,在创建类的对象时,输入类名和左侧的括号“(” 后,将显示该信息。 Statement:类体,主要由类变量(或类成员)、方法和属性等定义语句组成。如果在定义类时,没想好类的具体功能,也可以在类体中直接使用pass语句代替。 6.方法重写


基类中定义的harvest)方法, 无论派生类是什么水果都显示“水.....”如果想要针对不同水果给出不同的提示,可以在派生类中重写harvest)方法。例如,在创建派生类Orange时,重写harvest()方法的代码如下:

class Orange(Fruit): # 定义橘子类(派生类) color = "橙色" def_ init_ (self): print("\n我是橘子") def harvest(self, color): print("橘子是:" + color + "的! ") # 输出的是形式参数color print("橘子有很多,大小不一") print("橘子原来是:" + Fruit.color + "的! ");  # 输出的是类属性color 7.创建函数

创建函数使用def关键字实现,具体的语法格式如下:

def functionname([parameterlist): ["comments"] [functionbody]

参数说明:

functionname: 函数名称,在调用函数时使用。 parameterlist: 可选参数,用于指定向函数中传递的参数。如果有多个参数,各参数间使用逗号“”分隔。如果不指定,则表示该函数没有参数,在调用时也不指定参数。  "comments": 可选参数,表示为函数指定注释,注释的内容通常是说明该函数的功能、要传递的参数的作用等,可以为用户提供友好提示和帮助的内容。 functionbody: 可选参数,用于指定函数体,即该函数被调用后,要执行的功能代码。如果函数有返回值,可以使用return 语句返回。 8.调用函数

调用函数也就是执行函数,基本语法格式如下:

funcionname(parametesvalue)

参数说明:

functionname:函数名称,要调用的函数名称必须是已经创建好的。 parametersvalue: 可选参数,用于指定各个参数的值。如果需要传递多个参数值,则各参数值间使用逗号“”"分隔。如果该函数没有参数,则直接写一对小括号即可。 9.为参数设置默认值

定义带有默认值参数的函数的语法格式如下:

def functionname(.. ,[parameterl = defaultvalue1]): [functionbody]

参数说明:

functionname: 函数名称, 在调用函数时使用。 parameter1 = defaultvaluel: 可选参数,用于指定向函数中传递的参数,并且为该参数设置默认值为defaultvaluel functionbody: 可选参数,用于指定函数体,即该函数被调用后,要执行的功能代码。 10.返回值

return语句的语法格式如下:

returm [value]

参数说明:

value:可选参数,用于指定要返回的值,可以返回一个值,也可返回多个值。 11.匿名函数

匿名函数是指没有名字的函数,在Python中,使用lambda表达式创建匿名函数,其语法格式如下:

result = lambda [argl [,arg2,...,argn]]:expression

参数说明:

result:用于调用lambda表达式。 [arg1[,arg2,...,argn]]可选参数,用于指定要传递的参数列表,多个参数间使用逗号“”分隔。 expression: 必选参数,用于指定一个实现具体功能的表达式。如果有参数,那么在该表达式中将应用这些参数。

有帮助的话来个三连击

有帮助的话来个三连击

有帮助的话来个三连击


作者:ywsydwsbn



python面向对象 程序设计 程序 对象 Python

需要 登录 后方可回复, 如果你还没有账号请 注册新账号