高中Python程序设计教学初探与反思_第1页
高中Python程序设计教学初探与反思_第2页
高中Python程序设计教学初探与反思_第3页
高中Python程序设计教学初探与反思_第4页
高中Python程序设计教学初探与反思_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

高中Python程序设计教学初探与反思

Summary:随着新一轮的课程改革推进,信息技术课堂教学将引入Python程序设计的教学,探索基于Python编程语言教学的学科核心素养培养,特别是计算思维的训练将成为教学研究的热点。笔者经过一个学期的课堂教学初探,对高中信息技术Python程序设计教学有了一定的认识,本文结合教学实践,探讨对Python进行教学尝试的过程和反思。Keys:Python程序设计反思教学初探随着新一轮的课程改革推进,新课标从四个方面阐述了学科核心素养,分别是信息意识、计算思维、数字化学习与创新、信息社会责任。更突出信息技术作为一门基础课程。基于新课标编写的新教材准备铺开,我们尝试在高一信息技术课堂教学中引入Python程序设计的教学,探索基于Python编程语言教学的学科核心素养培养,特别是计算思维的锻炼。经过一个学期的课堂教学初探,对高中信息技术Python程序设计教学有了一定的认识,下面结合我校教学实践谈谈这次教学尝试的过程和一些反思。课程准备因为首次将Python内容引入到常规课堂教学,为了能顺利的上好课,科组老师在开课前就做了很多准备工作。教师的知识储备在以往的信息技术课程中也有程序设计相关的内容,例如粤教版必修1教材中的《编制计算机解决问题》以及选修1《算法与程序设计》模块都是计算机编程的教学内容,以VB语言为主要内容,而近年在中学课堂里也有一些学校开展了AppInventor移动编程的教学,所教授语言为可视化的积木语言。相比较而言,Python语言在高中信息技术课堂中的教学尝试较少。对于我校老师来说Python语言的教学也是第一次接触,几位老师都没有接触过Python语言。这次高一共18个班,安排了三位信息技术教师任教,三位教师都在上一学期末参加了市里组织的Python编程集中学习班,另外还利用暑假和课外时间通过书本和网络等资料进一步学习了更多的Python编程的相关知识。因此在开课之前任课教师有了必要的知识储备。软硬件环境的调试准备因为第一次进行Python语言的教学,之前学校电脑室的电脑都没有安装Python语言,上课的班级使用到不同的电脑室,电脑配置和操作系统的版本都有一些差异,因此在开课前我们也对几个电脑室都进行了软、硬件环境的测试与安装,解决了很多可能影响教学的问题,为顺利开课做好了准备。同时为了在第一节课让学生感受并掌握基本的Python安装,电脑室的机器一开始都没有安装Python,在第一节后才全部装上Python语言包。教学内容的准备在新课程标准的教材还没有印发,具体“教什么?”是个问题。教学内容应该怎样规划、教学顺序怎样安排,这都关系到课程是否能有效开展。备课组老师查阅了大量的资料和书本,结合高一学生入学的信息技术基础和一个学期的教学课时安排,将Python语言的编程知识做了较为系统的分析,整理和设计了教学计划,立足在“让学生掌握基本的Python程序设计,能使用Python编写简单代码,为学生进一步深入探究编程打下基础”的目标,为整个学期设计了教学框架和内容,落实Python教学的知识点,保障了教学的顺利开展。教学实施教学备课在开展具体教学的过程中,我们坚持每周至少2~3次的集体备课,科组其他年级教师也参与到备课组备课,集思广益。集体备课包括了课前备课和课后备课。课前备课中,备课组对每个知识点的组织、教学重难点都进行了分析,对课堂教学中可能存在的问题及应对方法也进行了较为深入的探讨,然后,备课组安排教师分工根据课前备课结果将教学内容、教学课件和教学素材等准备好,保障了备课组教学进度的统一,方便教学过程的不同班级教学比较和同步。在课后备课中,每位老师将自己这节课的上课情况,学生学习情况,课堂中遇到的问题和解决方法等进行交流,在后续班级的教学中进一步完善教学课件和素材,优化教学方法。通过集体备课也进一步提升了教师对Python编程教学的理解和把握。教学内容安排整个学期的Python编程语言教学安排,除去了节假日和考试等影响,有效课堂教学共15个课时,具体的教学内容安排如下表:在教学内容的组织上,考虑到学生入学的信息技术基础和他们对编程知识理解较少,对Python编程以语法和基本语句的教学为主,包括了对Python语言的基本认识,Python基本语法和数据类型,Python顺序程序设计、Python选择结构程序设计、Python循环结构程序设计、Python字符串、列表和元组,Python函数以及Python综合编程。基本包含了Python基本编程的知识。前期的教学内容相对简单易懂,以培养学生学习Python语言的兴趣为主,中期的教学则重点探讨循环语句的使用,引入很多具体问题的分析和简单算法设计,强调对学生分析问题和思考问题能力的锻炼,后期以Python函数调用和定义为主要内容,综合运用前面所学的Python基础编程知识以及各种数据类型,引导学生从更实用的角度去理解Python语言编程。教学过程中为了让学生更好的掌握基本代码的编写,还安排了3~4节练习课,专门通过精心设计的上机编程题让学生动手探究和训练,加强了学生的动手编码能力。每节课的内容都设计了教学课件,利用并制作了网页教程放在学校的在线课堂上,让学生可以随时查阅参考,同时在线课堂网页上还为学生提供了两个较为优秀的Python学习参考网站:Python基础|菜鸟教程:/Python/Python-tutorial.htmlPython官方中文参考手册:https://docs.P/zh-cn/3.7/通过教学在线课堂和参考资源网站为学生提供更完善的参考资料。教学方法与课堂模式的探究在开展Python编程教学中安排了三位老师任教,三位老师根据每个班级学生的情况和自己教学风格在集体备课基础上根据自己个性进行课堂教学的尝试,教学方法既有相似也有差异。相似的教学方法如前期入门内容教学都以讲授和操作演示、指导学生模仿练习为主。而在中后期的教学中则有较多的教学模式探讨,例如对于循环语句的教授,有的课堂以较传统的讲授演练方式,有以问题探究式教学方式,也有课内翻转,安排学生课前先学习了解,然后课堂上学生上台当“小老师”讲解的。通过多种教学模式的尝试探讨,不断的调整后续的教学方法。整体而言,在基本概念的理解方面用较传统的讲授演练方式效果较好,因为集中讲授让学生更直观了解新概念和知识,对于操作性较强的内容则更适合于任务驱动的探究式学习,学生在探究过程中更多的动手实践去验证对语言语句的理解,有了一定基础以后对于知识量较大的Python基础数据类型和编程技巧则更适合于用课堂翻转的方式,让学生利用课外时间拓展了解学习内容,再通过课堂上的学生讲解帮学生复习和系统化所学知识。经过一个学期的教学尝试,我们认为对于Python编程语言,针对不同的学习阶段和不同的教学内容,需要运用多种方法进行课堂教学。练习与考试Python作为一门程序语言,教学过程中让学生上机动手编程是最重要的教学手段。我们设计的所有课堂练习都是上机编程练习。特别安排的几节练习课内容也是编程题目的代码编写,既有简单容易实现的练习,也有具有一定思考度能满足较高水平学生学习需求的。简单的如:已知线段的两个端点的坐标A(x1,y1),B(x2,y2),求线段AB的长度。这样的题不论是分析还是代码对高中学生都是比较容易实现的。有一定思考度的题如:求出1000以内的所有素数。这样的题目需要仔细分析,并能运用数学知识设计出求解的有效方法才能编写正确程序。为了了解学生对学习内容的掌握程度,同时促进学生进一步系统复习Python编程知识,我们在学期末安排了考试,试卷类型有选择题、读程序写结果、程序填空、上机编程等四种题型。从考试题型和题目内容的设计上侧重考察学生对Python编程代码的掌握能力,特别是问题分析、算法设计、代码实现。从考察的结果来看,大部分学生还是能较好的掌握Python语言的。教学反思这是我校第一次在高中信息技术课堂教学中教授Python程序设计的内容,经过一个学期的教学尝试,有了一些体会和反思。程序设计教学要尽量激发和保持学生兴趣兴趣是最好的老师。Python语言跟其他高级语言如C++,Java等相比较语法和代码结构相对比较简单,对没有编程基础的学生而言,学习难度相对较低。Python作为一种面向对象语言,在具体使用上和跟学生平时接触的计算机应用比较接近,代码方式也比较容易接受。但作为规范的高级语言,在深入学习的时候依然具有一定的枯燥性。为了激发学生的学习热情,第一节课我们介绍了Python的来历,并展示了一个简单但效果明显的Python作图程序。为了打消学生对编写代码的畏惧情绪,我们通过Python独特的交互编程方式边写代码边运行呈现结果,让学生感受到程序设计也很直观有趣。在保持和培养学生学习兴趣方面,我们主要是从课堂练习入手,一方面课堂练习的题目尽量设置得具有渐进性,不会一下子就变得很难,让学生通过一点点的程序完成不断体验到编写代码成功的喜悦,例如在教授循环语句的时候,举例子为求100以内的整数和,练习一设计为求100以内的奇数和,练习二设计为求100以内的能同时被3和7整除的整数和,练习三设计为求100以内的奇数和与偶数和的差,这样逐渐加大题目难度,让学生能够渐进的完成代码。另一方面,为了避免练习题内容枯燥,在设计题目的时候尽量少出纯数学描述的题目,而设计较为解决有趣的生活问题,例如让学生编程计算小狗年龄相当人类年龄的程序练习,让学生设计简单人机趣味对话游戏等,使学生感受到编程与实际问题之间的紧密关系。特别的,可以出简单算法的题目,但尽量少出复杂算法的题目,笔者一直从事信息学竞赛辅导,Python语言虽然也可以用来写信息学奥赛题,但对于普通学生而言,难度太大很容易让学生产生畏难情绪,而且Python本身也不太适合编写复杂的算法程序。加强学生上机编码能力作为程序语言,要理解和掌握就要通过上机编码。课堂教学中要尽量多留出时间给学生动手编写代码,教师讲解内容要具有针对性,语言要精练。每一个指令,每一个语句的理解需要学生通过一行行代码的编写和调试运行才能更好掌握。在学生上机编写代码过程中,要引导学生自己分析程序编译和运行的反馈信息,理解各种错误和问题的原因,掌握修改和完善代码的能力,编程的过程就是不断试错的过程。学生编码过程需要及时的指导,在实际课堂教学中除了教师的指导外,我们也尝试让代码能力较强的学生帮忙指导代码较弱的学生,达到互相促进的效果。对于学生编写的代码,教师要及时的评改。程序设计的入门,学生对代码编写的风格和习惯都不成熟,对基本语句的理解往往不透彻,这些都需要教师进行精心指导。教学内容需要更合理的分配由于是新课程标准教材推广前的Python语言教学,没有适用的教材,教学内容的安排都是在集体备课过程中不断的探讨和调整设计出来的。这一次的教学尝试内容安排还不太理想,总体感觉每节新课的教学容量稍多了一些,使得部分基础较弱的学生感到学习有点吃力,为此我们在教学过程中适当的设置了一些练习课,用来帮助学生加强前面教学内容的理解,并强化上机编码能力的训练。下一轮的Python教学可以适当的降低每节新课的教学容量,应该有更好的教学效果。课程开展需要教学平台的支持程序设计教学必须强调学生的代码编写能力,在学生学习编程的入门阶段,要落实有效的程序代码指导,需要教师花费大量的时间和精力对每个学生每节课提交的代码进行审阅批改。在这次Python教学尝试中我们使用传统的文件夹共享方法收集学生代码并进行评改效率低下。要提升效率需要高效的教学平台支持,借鉴信息学奥赛训练使用在线测评系统,通过Onlinejudge能更方便的实现代码的提交、自动评测反馈和学生练习跟踪,将会大大提升学生代码验证效率,同时也会提升学生编程的兴趣。因此在今后还需

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论