问题驱动的Python编程教学

来源 :中国信息技术教育 | 被引量 : 0次 | 上传用户:fisher9527
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  随着新课标《普通高中信息技术课程标准(2017年版)》的实施,Python编程已成为高中信息技术课的重要内容。虽然编程学习过程中需要掌握一定的基础知识,但不应该只关注编程知识的记忆,而应该注重培养学生用编程来解决问题的能力。因此,围绕问题解决开展编程教学,既可让学生实践其编程技能,又可发挥学生在学习中的主体性,发展其高阶思维能力。所以,以Python编程为工具,设计问题驱动的教学具有较强的实用性和可行性。本文将以“帕斯卡概率游戏”为例,介绍此种教学的主要活动和流程。
  抛出问题,创设情境
  问题驱动的教学离不开一个好的探究问题,探究问题应当具备真实性、复杂性、趣味性等特点。真实性是指探究问题应该源于真实的生活实践,而不是胡编乱造,脱离实际。复杂性是指探究问题的答案不能是一目了然的,而是需要一定的探索和分析,最好是人工解决起来较为困难的类型。趣味性是指探究问题不能过于抽象化和学术化,要能够让学生有探究的兴趣。
  本文所选的“帕斯卡概率游戏”源于法国科学家、数学家帕斯卡与数学家费马之间的故事。故事发生在17世纪,在一位热衷于赌博的朋友影响下,帕斯卡和费马开始研究掷骰子的游戏。他们通过邮件讨论相关问题,并因此诞生了理论概率论。在教学中,笔者选取了其中一个游戏,让学生进行探究。游戏规则为:连续掷一个骰子4次,如果有1次出现6点,那么帕斯卡赢;如果没有出现6点,那么帕斯卡输。这里生发的探究问题是:如果玩这个游戏N次,最后谁胜率更高?这是一个源于真实情境的问题,而玩N次游戏很难人工完成,答案也并非一目了然。最重要的是,該问题本质上与数学的概率论相关,但是以游戏的形式呈现,能够激发学生探究的兴趣。
  分析问题,引出编程
  “帕斯卡概率游戏”虽然规则简单,但是理解其所隐含的概率问题并不简单。在教学实践中,笔者购买了骰子,让学生两两一组玩这个游戏,并提供数据记录表让学生记录游戏结果。因为时间有限,只让学生玩20次游戏,并报告帕斯卡和费马的胜率。在汇报游戏结果的同时,每个小组需要对探究问题(N次游戏后谁胜率更高)给出自己的结论,并做出猜想或者解释。让学生动手实践掷骰子游戏的过程,是为了让其能更加真实地感知问题情境,并在不断掷骰子的过程中熟悉游戏规则,为后面分析与解决问题奠定基础。通过这一环节,学生还会对探究问题形成一个初步的解释,这个解释并不是教师的灌输,而是他们自主探究得出的。
  在学生充分理解问题之后,教师需要从程序设计的角度带领学生进一步分析问题,首先,对探究问题进行抽象和分解,形成可编程的子问题。在本例中,对N次游戏进行模拟是解决问题的关键。当N很小时,可以通过真实的游戏实现,但其结果很难接近真实的概率;当N很大时(如100万),其结果会接近理论概率,而计算机模拟正适合这一情境。在这个环节,探究问题可以分解为三个子问题:①如何用代码模拟掷骰子过程?②如何模拟一个回合的游戏(掷骰子4次)并判定胜负?③如何模拟N回合的游戏并呈现游戏结果?其次,让学生分析和讨论程序代码的核心模块,也就是对程序代码进行规划。本例中,学生需要用Python编程语言来进行这一“翻译”过程。例如,第一个子问题可以使用Python随机函数包(random)实现。第二、第三个子问题需要使用循环语句、判断语句等基本语句实现。此时学生不需要完成代码的所有细节,而是要对程序有一个完整的规划。
  解决问题,测试代码
  在学生完成了初步的代码规划之后,编程环节可以正式实施。课堂组织形式仍然可以是两人一组,共同完成代码编写任务,该模式可以减少编程过程中的错误,提升编程效率。设计这一环节时,教师需要回答一个核心问题:是否给学生提供程序模板?如果学生的编程能力较好,可以让学生自己完成完整的程序,教师只提供适当的帮助。如果学生的编程能力较弱,教师可以根据学生的具体情况提供相应的“半成品”模板程序,为学生提供学习支架。上图为“帕斯卡概率游戏”的参考代码。其中7~11行代码是模拟一次游戏过程的函数,是整个程序的难点。教师可以在此增加注释、描述等文字,然后删除其中某一行,让学生填写缺少的代码。
  在程序完成之后,需要让学生对代码进行测试,并根据结果来回答探究问题。在本例中,运行程序之后学生会发现:①随着游戏次数增加,帕斯卡的胜率越来越稳定;②当进行100万次后,帕斯卡的胜率大约为51.8%。这也就找到了探究问题的答案:如果玩这个游戏N次,最后帕斯卡的胜率更高。然而,这只是用实验模拟的方法解决了问题,并没有从数学概率的理论角度阐释原因。此时,教师可以结合中学数学的概率知识,从理论上来解释程序结果。但这似乎超出了信息技术教师的能力范围。因此,在进行问题驱动的编程教学设计时,信息技术教师可以和学科教师组成备课团队,结合学科知识和编程内容,共同完成教学设计。这样,教学设计既能在信息技术课中实施,也可以在学科教学中应用,一举多得。
  拓展问题,迁移学习
  与传统的讲授式教学相比,问题驱动的教学能够实现有意义的学习,有利于学习的迁移。在学生利用编程解决探究问题之后,教师应该进一步抛出拓展性问题,让学生进行自主探究。这一环节一方面可以检验教学的效果,另一方面可以促使学生迁移应用已掌握的知识和技能。以“帕斯卡概率游戏”为例,探究问题为:如果玩这个游戏N次,最后谁胜率更高?这个探究问题虽然比先前的问题复杂度有所提升,但是有了先前的经验,学生能够自主探究完成。
  在选择拓展问题时,其跨度和难度变化不能过大。首先,拓展问题应当与先前的探究问题是同一类型的问题。本例中,笔者采用的都是基于“帕斯卡概率游戏”的概率问题,而如果拓展问题变为“草原生态平衡”模拟问题,跨度则过大,不利于学习的迁移。其次,拓展问题的难度应该略高于原先的探究问题。如果问题难度提升过高,学生可能没有足够的能力去完成自主探究。良好的拓展问题设计应该符合学生的最近发展区,也就是学生“跳一跳能够到”的范围。
  小结
  Python语言的易用性使其非常适合编程教学,而其强大的可扩展性又非常适合问题解决的教学情境。希望未来有更多教师尝试问题驱动的教学方法,并分享更精彩的案例。
其他文献
日前,山东省临沂市农业农村局公示了2019年度新型职业农民职称评审通过人员名单,全市共有20人获评高级职称资格、80人获评中级职称资格、200人获评初级职称资格。  取得临沂市专业技术职称的新型职业农民,将优先享受包括学习培训、人才选拔、承担农業科技试验示范推广任务、参与农业技术开发、选为农民教育培训基地辅导员、享受国家规定的信贷、税收等方面的优惠政策。
近日,一项来自加拿大的调查或许会使整夜不能入眠常常焦虑的人感到一点点安慰,因为调查的结果显示,焦虑的人更加聪明。  研究人员在对125名学生进行研究后发现,在认知测试焦虑量表中得分高的人通常是语文智力高的人。而研究发现非语文智力得分高的学生通常很少担心事情。专家指出,前者花更多时间在大脑中传送过去与未来的事情,这意味着,他们相较于后者在事情、对话以及恐惧的记忆方面更注意细节。(《华夏经纬网》)  
人在面对新事物时,都会先恐惧,再熟悉,食物之于孩子也是一样。  “我不吃菜菜,有股味儿;鱼汤太难喝了,蘑菇也不好吃。我想吃炸鸡腿、喝可乐……”七岁小男孩乐乐,每顿饭都是一场拉力战,成天挑食更让父母头痛不已。孩子为什么挑食?挑食到什么程度是“病”?挑食对身体成长是否有影响?“父母树立幼儿正确膳食的科学观点,是从根本上解决孩子挑食、偏食的关键所在。”全军儿科疾病诊治中心副主任、福州总医院儿科主任医师任
黄利锋:在认识林教授之前,我们在2012年10月接触了群学网,在网站上开设了第一个课程“我的生日我做主”,试用的感觉是:群学网是一个类似于Moodle的课程管理平台,其操作流程对教师的网络课程设计有很强的指导作用,就像WebQuest有固定的模板,教师只需要把学习内容和学习任务填进相应模块,就能比较顺利地完成课程设计。林教授,请您介绍一下当初开发群学网的思路是什么?它的使用对象有哪些?能够实现哪些
山东省莒南县胡家岭村农民胡顺花在国家推出了一系列支农惠农政策之时,顺势而为、抢得先机,成为首批注册成立种植专业合作社的负责人。胡顺花重视學习、勤奋经营,带富了乡邻,实现了自己的“一片草丰水美的牧区、一方风吹麦浪的农场”梦想,成为高素质农民的优秀代表。  学技术勤奋努力  初中毕业后,贫困的家庭迫使胡顺花回家务农。一次偶然的机会,胡顺花在村大队部公示栏里看到了农广校的中专招生简章,点燃了她继续学习圆
女性进入婚姻殿堂后,经常被长辈催促赶紧生个孩子,结婚生子似乎是必经之路。然而,近年来,女性的平均生育年龄越来越大,伴随而来的问题就是,怀孕变得越来越难!自然受孕难,人工辅助也不易  女性的卵巢功能,受年龄影响非常大。随着年龄的增长,男性的精子质量下降的曲线就犹如下楼梯,而女性卵子质量的下降就仿佛高台跳水。对于有正常性生活的夫妻而言,每个排卵周期都有20%~25%的受孕机会。在不采取任何避孕措施的情
2014年8月8日至9日,我们三人组团参加了第十二届全国中小学信息技术创新与实践活动的网络教研团队赛项的决赛。决赛公平公正,当场公布赛题,小学数学的赛题是人教版《分数除以整数》。  整个决赛分四个阶段进行。8日上午,在机房进行团队信息化教学设计,并进行上传。8日下午,开放小学数学各团队的教学设计,按1号团队评2号、2号评3号的顺序进行点评,并将评价与建议上传;9日上午主要是针对他队的评价和建议对自
随着基础教育课程改革的不断深入,信息技术与数学的联系将更加密切。信息技术与初中数学学科的整合作为深化教育改革的“突破口”,愈来愈受到人们的广泛关注。运用新颖、先进的现代教育技术,为数学教学新的生长点提供了广阔的展示平台。新课标指出,数学课程的设计与实施应重视运用现代信息技术,现代信息技术是学生学习数学和解决问题的强有力工具。当前如何运用现代信息技术提高数学教学的效果,促进学生综合素质的提高,是摆在
众所周知,只有针对病因的特异性治疗才能取得良好的效果。所以,在决定不育症治疗方案之前,应该先明确其不育是绝对不育(不治疗即不能生育),还是相对不育(生育力低下,还有生育的可能);夫妻双方是否同时有不育因素存在。现在人们逐渐明白了,对于不育症患者而言,如果有更多针对病因的治疗方法,那就会有更好的结果。此外,还应该明确,在找不到原因的不育男人中,如果能治疗他们妻子引起不育的明确的特异性疾病,那将会更有
学生们都很喜欢微课Do you lide fruit。那么,诀窍在哪里呢?在教学设计方面,本微课所采用的故事化设计是一种非常巧妙的方法。因为故事是一种学生非常喜爱的形式,它有生活情趣,有发展线索,有着大量的隐喻,使学生更容易接受和理解。除了有好的教学设计外,微课是一种媒体,因此还需要有好的媒体设计,才能提高表达效果。下面我们用两个模型来对照、赏析。  模型一:微课的媒体设计框架(如图1)  微课是