黑马程序员python基础班教程笔记:(47)self理解.doc

黑马程序员python基础班教程笔记:(47)self理解.doc

ID:55634525

大小:479.50 KB

页数:14页

时间:2020-05-22

黑马程序员python基础班教程笔记:(47)self理解.doc_第1页
黑马程序员python基础班教程笔记:(47)self理解.doc_第2页
黑马程序员python基础班教程笔记:(47)self理解.doc_第3页
黑马程序员python基础班教程笔记:(47)self理解.doc_第4页
黑马程序员python基础班教程笔记:(47)self理解.doc_第5页
资源描述:

《黑马程序员python基础班教程笔记:(47)self理解.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、self1.理解self2.看如下示例:总结所谓的self,可以理解为⾃⼰以把self当做C++中类⾥⾯的this指针⼀样理解,就是对象⾃身的意思某个对象调⽤其⽅法时,python解释器会把这个对象作为第⼀个参数传递给self,所以开发者只需要传递后⾯的参数即可应⽤:烤地⽠为了更好的理解⾯向对象编程,下⾯以“烤地⽠”为案例,进⾏分析1.分析“烤地⽠”的属性和⽅法示例属性如下:cookedLevel:这是数字;0~3表示还是⽣的,超过3表示半⽣不熟,超过5表示已经烤好了,超过8表示已经烤成⽊炭了!我们的地⽠开始时时⽣的cookedString:这是字符串;描述地⽠的⽣熟程

2、度condiments:这是地⽠的配料列表,⽐如番茄酱、芥末酱等示例⽅法如下:cook():把地⽠烤⼀段时间addCondiments():给地⽠添加配料init():设置默认的属性str():让print的结果看起来更好⼀些定义类,并且定义_init_()⽅法3.添加"烤地⽠"⽅法4.基本的功能已经有了⼀部分,赶紧测试⼀下把上⾯2块代码合并为⼀个程序后,在代码的下⾯添加以下代码进⾏测试完成的代码为:5.测试cook⽅法是否好⽤在上⾯的代码最后⾯添加如下代码:print("------接下来要进⾏烤地⽠了-----")mySweetPotato.cook(4)#烤4分钟

3、print(mySweetPotato.cookedLevel)print(mySweetPotato.cookedString)定义addCondiments()⽅法和_str_()方法defstr(self):msg=self.cookedString+"地⽠"iflen(self.condiments)>0:msg=msg+"("fortempinself.condiments:msg=msg+temp+","msg=msg.strip(",")msg=msg+")"returnmsgdefaddCondiments(self,condiments):self.c

4、ondiments.append(condiments)7.再次测试完整的代码如下:classSweetPotato:'这是烤地⽠的类'#定义初始化⽅法definit(self):self.cookedLevel=0self.cookedString="⽣的"self.condiments=[]#定制print时的显示内容defstr(self):msg=self.cookedString+"地⽠"iflen(self.condiments)>0:msg=msg+"("fortempinself.condiments:msg=msg+temp+","msg=msg.st

5、rip(",")msg=msg+")"returnmsg#烤地⽠⽅法defcook(self,time):self.cookedLevel+=timeifself.cookedLevel>8:self.cookedString="烤成灰了"elifself.cookedLevel>5:self.cookedString="烤好了"elifself.cookedLevel>3:self.cookedString="半⽣不熟"else:self.cookedString="⽣的"#添加配料defaddCondiments(self,condiments):self.cond

6、iments.append(condiments)#⽤来进⾏测试mySweetPotato=SweetPotato()print("------有了⼀个地⽠,还没有烤-----")print(mySweetPotato.cookedLevel)print(mySweetPotato.cookedString)print(mySweetPotato.condiments)print("------接下来要进⾏烤地⽠了-----")print("------地⽠经烤了4分钟-----")mySweetPotato.cook(4)#烤4分钟print(mySweetPotat

7、o)print("------地⽠⼜经烤了3分钟-----")mySweetPotato.cook(3)#⼜烤了3分钟print(mySweetPotato)print("------接下来要添加配料-番茄酱------")mySweetPotato.addCondiments("番茄酱")print(mySweetPotato)print("------地⽠⼜经烤了5分钟-----")mySweetPotato.cook(5)#⼜烤了5分钟print(mySweetPotato)print("------接下来要添加配料-芥末酱----

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。