简 介
这里 专项复习。制作工具和使用模具来实现程序功能。
01 一些问题
在学习的过程,一些问题比较容易暴露出来,比如程序设计中的逻辑错误,但是还有一些问题就没有那么容易暴露出来,比如,对函数的理解等等。小朋友有时候能够写出来一些语句,并不是因为对使用方法理解了,而是因为一开始就是这么学习和记忆的。稍稍变换一下要求,可能就实现不了。
还有一个问题就是代码是由字母串组成的,尤其当一大串字母串组合在一起的时候,更容易看懵。在很多时候,换位思考会更好一点。作为初学者的小朋友面对大段的代码,和自己面对如下的代码一下,比较难理解。比如这句 ./configure --prefix=/usr/lcoal/python3,完全与脑海中的关于程序安装的理念相冲突(就问你懵不懵)。同样地,小朋友对于赋值 x=3+5啊,循环啊,函数啊也同样会面临冲突的问题。因为程序中的思维在现实中比较难找到可以参考理解的事物。往大了说一点,世界观差异、文化差异也大抵如此。
02 教函数和类的思路
因为类包括属性和函数,所以教的思路是先教函数再教类。和小朋友直接说函数和类的概念,小朋友很难理解和融入自己的知识体系。因此,在教的时候,把函数比作工具,比如剪刀、螺丝刀等等,可以拿过来直接用。把类比作另一种工具的模具,要想使用工具就必须使用模具来制作工具,即类的实例化。
03 函数学习
函数可以分为有参数的函数和无参数的函数,以及有返回值的函数和无返回值的函数。因为小朋友刚学到乘法,所以让小朋友做了加减乘除四个函数。
defmaxadd(m1,m2):
n=m1+m2
returnn
defmaxsubtract(m1,m2):
n=m1-m2
returnn
defmaxmultiply(m1,m2):
n=m1*m2
returnn
defmaxdivide(m1,m2):
n=m1/m2
returnn
几个要点:
关键字def后面的是函数的名字
返回值用return
函数就像一个黑盒子,使用者只可以看到参数和返回值
不同函数中的变量谁都看不见谁,也改变不了谁
04 类的学习
类包括属性(一些变量)和功能(函数)。几个要点包括:
类名的第一字母大写
类的函数和一般函数相比有个不同点就是第一参数是self,表示对自己这个类的引用
对于属性的使用都需要使用self来寻找
classMaxmath:
defsetvalue(self,m1,m2):
self.a=m1
self.b=m2
defmaxadd(self):
y=self.a+self.b
returny
defmaxsubtract(self):
y=self.a-self.b
returny
defmaxmultiply(self):
y=self.a*self.b
returny
defmaxdivide(self):
y=self.a/self.b
returny
上面说过,要使用类的话,必须先使用类这个模具制作一个工具(对象实例),之后使用这个对象实例中的函数来实现功能。
m=Maxmath()
m.setvalue(8,2)
i=m.maxadd()
print(str(m.a)+"+"+str(m.b)+"="+str(i))
多多机器人工作室
领取 专属20元代金券
Get大咖技术交流圈