APP下载

Python程序设计的“断舍离”

2022-08-18王倩浙江省嵊州市剡城中学教育集团

中国信息技术教育 2022年16期
关键词:变量知识点教师

王倩 浙江省嵊州市剡城中学教育集团

● 断,下沉教学目标

在教学Python的过程中,部分学生对程序设计知识的接受能力强,只需要教师适当点拨和指导就能进行自主学习,而另一部分学生即使教师手把手教,其对算法、数据类型、运算符等知识仍是一知半解。因此,在教学过程中要根据学情明确教学目标,断绝无关任务。

1.“断”绝繁杂,明确教学目标

教学中需要根据学生具体情况,确定教学目标、重点、难点。在保证课程进度的基础上,下沉教学目标,找准着力点,让学生花时间讨论、思考、质疑、体验编程,强化相应抽象思维理念内涵。大小写、中英文切换、标点符号等不需要这节课堂培养的细节,可以先暂时断绝,让教学的思路更清晰,让教学的目标更明确。

笔者在教学《海龟模块画图》时,将某节课的教学目标定为掌握海龟的坐标方位。教师整节课给予学生四个命令,即前进、后退、左转、右转。学生掌握了基本命令,并能准确画出正方形,说明目标已经达到。虽然教学内容少,但是学生真正理解了知识点,还能用多余时间进行自由创作,如绘制“日”“田”等。

2.“断”绝多问,设定问题支架

生活中的一些问题看似烦琐,但如果用编程思维抓住本真就会变得简单。教师以问题驱动引导学生抓住问题的关键,断绝多余的问题,进而根据解题思维与步骤有效联系Python语言进行表述,能有效促进学生逻辑思维和构建思维的发展。一般解题步骤为:首先,对生活问题进行抽象,获取关键信息建立数学模型;其次,将问题进行分解,并转化成计算机可以处理的模型。

笔者在教研活动中听过一堂课,印象很深刻。该教师用餐厅点餐系统引入,学生很兴奋,说自己在饭店吃饭有过类似经验。但在布置任务、要求学生也完成同样的点餐系统时,教室却鸦雀无声。接着该教师细细分析,把看似复杂的餐厅点餐系统分解成三个模块,即欢迎模块、订制套餐模块、计费模块。欢迎模块为顺序结构,获取年龄数据age;订制套餐为多分支结构,根据不同年龄获取不同的选择结果为数据food;计费模块为循环结构,根据food列表进行累加计费获得数据momey。学生在明白其实是学过的三大基本结构后,逐渐对完成该任务有了信心。该教师逐步引导学生抓住问题的关键age—food—money,理解并完成导学案上的任务就能最终完成整个项目的设计。

《算术运算符和表达式》一课中研究的实例是科学教材中涉及的温度转换的问题。笔者在教学时以简单的小问题为切入点,帮助学生理清思路,如“看图表分析摄氏和华氏这两个变量的数据关系”“明确输入什么变量、计算什么变量、输出什么变量”“在Python代码中输入数据怎么实现,计算表达式怎么书写,输出数据怎么实现”等(如图1),问题层层递进,帮助学生体验计算机解决问题的过程,体验信息技术人员真实的工作模式和思考方式。

图1

● 舍,整合教学内容

教师要根据实际教学环境对教材进行舍弃,让教学根植于问题情境,解决真实复杂的现实生活问题。

1.“舍”弃套路,简化内容

教师要灵活机动处理教材,教材里安排的内容不一定都要在一节课讲完,可以对一个问题进行细讲,讲精讲透,多给学生思考的时间和练习的时间。

例如,《算术运算符和表达式》一课的重点为理解并能准确书写算术表达式。教学过程为先学习基本的算术运算符,然后抛出生活问题,让学生抽象出变量,书写最关键的变量表达式。在完成课本例题后,继续提出若干生活问题,如计算圆形花坛面积、计算BMI等。为帮助学生理解变量、赋值、运算符等知识点,笔者在小结环节使用思维导图(如图2),其核心是展现数据计算赋值的过程,利用PPT的动画功能不仅一步步呈现出本堂课的知识点,还能清晰展现出知识间的关系脉络。

图2

2.“舍”弃权威,重组教材

浙教版教材在前面几课时里集中安排了数据类型、变量、运算符等知识点,过多的理论讲解让学生既无法全部理解也会觉得枯燥乏味,更不能激发学习兴趣。所以,笔者寻找贴近学生真实生活的实例,融入理论知识,适当调整教材内容的前后顺序,把知识点串联起来变成一个项目,让学生在学中用,积极寻找解决方案。

例如,在刚接触编程时,可以让学生打印图形、名片等,主要练习print函数。接下来可以解决计算问题,如已知三角形三边长求周长、求面积,主要练习运算符。之后解决已知问题,如已知三角形三边长求面积问题,主要练习赋值和输出语句。在学习顺序结构后,重点解决输入三角形三边长求面积的问题,主要练习输入语句。在学习分支结构后,重点解决三角形的构成问题,主要分析问题中的判断条件。学生在做中学,需要什么学什么,知识点少,易于掌握,将基础打扎实便于后续的深度学习。为了贴近学生的生活,笔者也尝试引入课本外的实例——制作体重计算器。先学习设计男生版或女生版的体重计算器,接着设计通用版的体重计算器,越贴近实际生活,学生思考得就越周全,学生体验制作软件是一个需要不断完善的过程。

● 离,打破常规思路

课堂是学生的学习场,教师可以脱离其他无关环节,让学习在活动、实践、操作中真实发生,让学生通过实践活动的验证将知识内化为“真知识”。教师要以学生为出发点,敢于远离舒适区,挑战自己课堂中的问题,打破常规,用多种尝试不断完善课堂。

1.脱“离”传统,读背概念,游戏互动

①读记说模式。Python语言中的基本概念、常见函数、基本结构是必须理解的内容,笔者通过“读记说”的方式让学生加深印象,这样学生在代码里看见新词就不会感到陌生。例如,变量的命名规则是非常基础的知识点,笔者首先让全班齐读初步了解规则,接着通过出题让学生练习,考点为命名的组成成分、不能数字开头、不能与关键词同名和区分大小写,使学生理解关键点。最后通过在线测试软件现场反馈学习情况,不仅学生能直接看到测评结果知道自己的薄弱点,而且教师能根据测评结果及时干预,反思重新设计教学过程。

②互动游戏模式。教师要善于观察学生的日常生活,发现趣味的主题,通过设计游戏,让知识变得简单有趣。在课堂上加入游戏环节,既能活跃课堂气氛,又能让学生体验编程的魅力。例如,“一二三四五六七我爱Python”报数游戏,在要求报到与七有关的数时只能说“我爱Python”。首先要让学生明确规则参与报数游戏,然后分析游戏中的主要计算思维——对所有数进行遍历,筛选出符合危险数字“七”特征的数字。遍历需要通过循环结构来实现,筛选需要分支结构来实现,两者的有效结合就能把问题解决。学生通过亲身参与游戏,理解了基本语句结构相互嵌套可以解决复杂的问题(如图3)。

图3

2.脱“离”题海,精选习题,分层练习

①精选习题。Python习题主要来源于课本及网络资源。教师要多关注相关网站,抓住习题中的知识点,或借鉴,或改编,及时进行分类整理。另外,如果学生基础薄弱,则以填空题、选择题为主,给学生部分代码让其补充完整。随着学生编程能力的提升,可以通过多变、多解的方式,引导学生从观摩、模仿、尝试等阶段逐渐过渡到独立思考阶段,最终总结出解决问题的一般规律。例如,针对教材中的问题“比较a、b、c三个数,输出其中最大的数”,可以从多个角度思考。若只使用分支结构,可以通过多次条件判断,先假设a大于b,从肯定的角度出发,再判断a和c的大小。从否定的角度出发,判断b和c的大小,一步步判断出最终结果。当然,也可以通过两次判断来解决问题,先判断a是否是最大数,如果不是那么最大数在b和c里,再判断一次b和c的大小就能得到结果,还可以用一个多分支结构来写条件。随着学习难度的增加,同样的问题还可以用列表、函数等方法解决。

②分层练习。考虑到学生基础参差不齐,可以设定分层任务。教师设置的作业有难易之分:基础型作业,在课堂上已经练习分析过,所有学生必须完成;提高型作业,大部分学生完成;挑战型作业,学有余力的学生完成。学生可以根据自身情况进行选择。

总之,在教学Python程序设计时会有一定的困难,需要教师在备课过程中花时间、下功夫,要“敢于断绝,下沉教学目标;敢于舍弃,整合教学内容;敢于脱离,打破常规思路”,抓住解决问题的关键,勇于在课堂上实践、反思、再创造。

猜你喜欢

变量知识点教师
第十二页 知识点 静候“18”
第十页 知识点 教-8教练机
关于口罩 这10大知识点你必须知道
未来教师的当下使命
知识点自测
美育教师
分离变量法:常见的通性通法
圆我教师梦
不可忽视变量的离散与连续
轻松把握变量之间的关系