扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
本文实例讲述了Python面向对象程序设计OOP。分享给大家供大家参考,具体如下:
成都创新互联公司-专业网站定制、快速模板网站建设、高性价比沈北新网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式沈北新网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖沈北新地区。费用合理售后完善,10多年实体公司更值得信赖。类是Python所提供的最有用的的工具之一。合理使用时,类可以大量减少开发的时间。类也在流行的Python工具中使用,例如,tkinter GUI API。
为何使用类
与面向对象的Java一样,类是对现实世界的一种抽象。
从更具体的程序设计观点来看,类是Python的程序组成单元,就像函数和模块一样:类是封装逻辑和数据的另一种方式。实际上,类也定义新的命名空间,在很大程度上就像模块。但是类有三个重要的独到之处,使其在建立对象时更为有用。
1.多重实例
类基本上就是产生对象的工厂。每次调用一个类,就会产生一个有独立命名空间的新对象。每个又类产生的对象都能读取类的属性,并获得自己的命名空间来储存数据,这些数据对于每个对象来说都不同。
2.通过继承进行定制
类也支持OOP的继承的概念。我们可以在类的外部重新定义其属性从而扩充这个类。
3.运算符重载
通过提供特定的协议方法,类可以定义对象来响应在内置类型上的几种运算。例如,通过类创建的对象可以进行切片,级联和索引等运算。Python提供了一些可以由类使用的钩子,从而能够中断并实现任何的内置类型运算。
Python的类与Java类似,所以关于继承、属性和方法以及类和实例的基础知识在这里不再赘述。直接介绍语法内容。
类产生多个实例对象
【OOP模型中的两种对象:类对象和实例对象】
类对象提供默认行为,是实例对象的工厂。实例对象是程序处理的实际对象:各自都有独立的命名空间,但是继承(可自动存取)创建该实例的类中的变量名。类对象来自于语句,而实例来自于调用。每次调用一个类,就会得到这个类的新的实例。
【类对象提供默认行为】
执行class语句,就会得到类对象。以下是Python类的主要特性:
1.class语句创建类对象并将其赋值给变量名。就像函数def语句,Python class语句也是可执行语句,执行时,会产生新的类对象,并将其赋值给class头部的变量名。此外,就像def应用,class语句一般是在其所在文件导入时执行的。
2.class语句内的赋值语句会创建类的属性。class语句内的顶层的赋值语句会产生类对象中的属性。从技术角度讲,class语句的作用域会变成类对象的属性的命名空间,就像模块的全局作用域一样。执行class语句后,类的属性可由变量名点号运算获取object.name
。
3.类属性提供对象的状态和行为。类对象的属性记录状态信息和行为,可由这个类创建的所有实例共享。位于类中的函数def语句会生成方法,方法将会处理实例。
【实例对象是具体元素】
当调用类对象时,我们得到了实例对象。以下是类的实例内含的重点概要。
1.像函数那样调用类对象会创建新的实例对象。实例代表了程序领域中的具体元素。
2.每个实例对象继承类的属性并获得了自己的命名空间。由类所创建的实例对象是新的命名空间。一开始是空的,但是会继承创建该实例的类对象内的属性。
3.在方法内对self属性做赋值运算会产生每个实例自己的属性。在类方法函数内,第一个参数(self)会引用正处理的实例对象。对self的属性做赋值运算,会创建或修改实例内的数据,而不是类的数据。
第一个例子
首先定义一个名为FirstClass的类,通过交互模式运行Python class 语句。
>>> class FirstClass: def setdata(self,value): self.data = value def display(self): print(self.data)
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流