- 1、本文档共21页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
构造方法和析构方法教师北京信息职业技术学院马东波商务数据分析与应用专业教学资源库
12构造方法和析构方法目录CONTENTSself的使用13运算符重载
01构造方法和析构方法2
1构造方法和析构方法3构造方法指的是__init__方法。当创建类的实例的时候,系统会自动调用构造方法,从而实现对类进行初始化的操作。
1构造方法和析构方法4classCar: def__init__(self):self.color=“黑色” deftoot(self): print(%s的车在鸣笛...%(self.color))
1构造方法和析构方法5当删除一个对象来释放类所占用资源的时候,Python解释器默认会调用另外一个方法,这个方法就是__del__()方法。__del__方法被称为析构方法。
02self的使用6
2self的使用7在方法的列表中,第1个参数永远都是self。self的字面意思是自己,我们可以把它当做C++里面的this指针理解,表示的是对象自身。当某个对象调用方法的时候,Python解释器会把这个对象作为第1个参数传给self,开发者只需要传递后面的参数就可以了。
2self的使用8classDog:def__init__(self,newColor):self.color=newColordefprintColor(self):print(颜色为:%s%self.color)示例:dog1=Dog(白色)dog1.printColor()
03运算符重载9
3运算符重载10运算符重载是通过实现特定的方法使类的实例对象支持Python的各种内置操作。例如:+运算符是类里提供的__add__这个函数,当调用+实现加法运算的时候,实际上是调用了__add__方法。
3运算符重载11方法说明何时调用方法__add__加法运算对象加法:x+y,x+=y__sub__减法运算对象减法:x-y,x-=y__mul__乘法运算对象乘法:x*y,x*=y__diy__除法运算对象除法:x/y,x/=y__getitem__索引,分片x[i]、x[i:j]、没有__iter__的for循环等__setitem__索引赋值x[i]=值、x[i:j]=序列对象__delitem__索引和分片删除delx[i]、delx[i:j]
3运算符重载12加法运算是通过调用__add__方法完成重载的,当两个实例对象执行加法运算时,自动调用__add__方法。z=x+y执行加法运算,实质是调用__add__方法
3运算符重载13跟索引相关的重载方法包括如下3个:__getitem__:索引、分片;__setitem__:索引赋值;__delitem__:索引和分片删除。
3运算符重载141.__getitem__方法在对实例对象执行索引、分片或者for迭代操作时,会自动调用__getitem__方法。#定义索引、分片运算符重载方法def__getitem__(self,index):returnself.data[index]
3运算符重载152.__setitem__方法通过赋值语句给索引或者分片赋值时,调用__setitem__方法实现对序列对象的修改。def__setitem__(self,index,value):self.data[index]=value
3运算符重载163.__delitem__方法当调用del方法时,实质上会调用__delitem__方法实现删除操作。def__delitem__(self,index):delself.data[index]
17总结运算符重载self的使用构造方法和析构方法
18参考文献[1]黑马程序员.Python编程快速入门.北京:人民邮电出版社,2019
谢谢观看商务数据分析与应用专业教学资源库
构造方法和析构方法教师北京信息职业技术学院马东波商务数据分析与应用专业教学资源库
文档评论(0)