用户:
TimeLinkForever查看:0 回复:0 评论:0 创建时间:2020-02-02T12:38:03
我的教程《Python面向对象编程指南 入门阶段》,已经更新4227字,@写作喵快快块块来看看,这段我觉得很棒
一.创建一个类与类方法 创建一个类有啥麻子用呢? 不过上面这个问题不急,等一会就说 首先看一段代码 | 是光标,别搞错了啊!
下面的像赋值一样的代码(第4行)是创建了一个类的实例
就好比你画了一个房子,让后根据这幅画建房子,这就是创建实例
创建实例之后,你可以住它,你在房子的画中已经说了该怎么住,这是定义类方法
最后一行有个点,他是什么意思啊?
编某猫:那是点记法,点前面是谁该干,后面是该干什么,所以这句指挥了catcage去code(),而后者,必须是类方法。
啊,怎么会,居然错了!
编某猫:这是类方法的问题。你看,后面是不是制定了catcage去干这个事情?但是,类方法中没有给出指定人的参数,我们可以用一个self代替。
听不太懂,可以再讲解一下吗?
编某猫:就好比你是(大木博士),你要给(小智)下指令,让他去抓一只宝可梦,你不能对全实验室的人说你去抓一只宝可梦,也就是写def tcp(),而我们需要加一个self来指定是谁该去抓,就是def tcp(self),调用时写成Ash_Ketchum.tcp()#小智 才行,在使用点记法时,我们对他添加了一个参数,而定义中没有,所以才会出错。
哦,明白了。原来是这样的呀。
大家自己可以先修改一下代码,不要看下面的答案,看看能否成功运行啊!
提示:修改code定义中的参数
答案
这个时候,程序就能正常运行啦。
Self为什么是Self?
这只是一个惯例问题。其实,你可以不使用self,pickachu,charizard都可以,但是为了方便我们读懂,还是在程序里统一使用同一个表示调用者的参数就好