高中信息技术Python语言教学的思考

发表时间:2021/7/23   来源:《中小学教育》2021年9月1期   作者:叶晓洁
[导读] Python语言在高中信息技术教材中成为描述算法和解决问题的计算机语言,满足了新课标对程序设计语言的要求。在学习中通过解决实际问题,来体验程序设计过程、感受算法效率、掌握程序调试与运行的基本方法。

叶晓洁     温州市第五十八中学  325000
【摘要】Python语言在高中信息技术教材中成为描述算法和解决问题的计算机语言,满足了新课标对程序设计语言的要求。在学习中通过解决实际问题,来体验程序设计过程、感受算法效率、掌握程序调试与运行的基本方法。
关键词:高中信息技术;Python语言;教学
中图分类号:G652.2   文献标识码:A   文章编号:ISSN1001-2982 (2021)9-102-01

        在教学Python过程中,应尽快让学生使用功能强大的开发环境,在前段教学中引导学生使用命令行、Shell、IDLE等进行语法测试,提高学生评估并选用Python资源与工具、有效地管理学习过程与资源、创造性解决问题的能力。在教学“函数与模块”的“实践与体验”内容之前,让学生开始使用Pycharm,学生能方便地在Pycharm中管理模块,调试和运行程序。
        一、开始Python教学前的三个步骤
        第一步,在命令行进入Python环境后,先讲range()函数,因为range()函数的变量具有Python语言语法普遍的特征,通过反复改变参数和对运行结果的观察,形成初步对程序调试的体验。
        第二步,进入Shell进行程序调试,教材中计算和输出字符串的样例可以满足学生的自主学习,因为Shell的界面与命令行中的Python环境类似,学生不会觉得学习困难。
        最后一步,通过IDLE学习Python语言的编辑状态下的调试过程,再在IDLE环境下完成前两步的程序,巩固Python语言的语法规则(大小写敏感、冒号用法、语句块、缩进等)。这一部分内容比较多,也有很多技巧,可以鼓励学生小组合作学习,相互启发和提示,最后总结和自己积累。
        二、清晰地讲解Python特殊的用法
        在Python中,变量无须声明,值和类型可以改变。教师通过演示和讲解,让学生理解变量的值和类型转换的过程和最终结果。
        三、教材中重点例题的教学建议
        (一)“问题与讨论”
        讨论的问题是甄别语句体(语句块)的语法格式和逻辑的正确性,教学时,可让学生分别完成“代码一”和“代码二”,结合输出的结果进行讨论。得出结论:“代码一”运行结果最后总是会输出“超速”,也就是最后一行“print(“超速”)”没有进行缩进;“代码二”的分支结构清晰,当条件成立时执行“print(“正常”)”,否则执行“print(“平均车速”,round(v,1))”和“print(“超速”)”两条语句。
        (二)“猜数游戏”
        本题是一道比较完整的例题,教材提供的资料也非常丰富,教学中可引导学生合作学习或自学。首先,引导学生自己分析任务,建立初步的模型后进行完善;然后,尝试(仔细分析)画出流程图,理清框图含义和程序运行的顺序,明确编程流程;最后,在完成程序调试的基础上,鼓励学生进行学习评价,总结解题步骤“抽象与建模”“设计算法”“编写程序”“调试运行”。
        本题中的“while”循环结构和“布尔”逻辑关系是非常重要的知识点,正是构造了“死循环”,程序才能实现输出“正确”反馈,以及“偏小”和“偏大”的提示。



        (三)利用海伦公式求面积
        可以先让学生查找资料,了解“海伦公式”,再引出用“用典型的例题和数学思想解释一般问题”的思想。
        通过自定义Area函数来“求解分割的4个三角形面积之和”求得正多边形面积,推理出用函数和“海伦公式”求面积的误差,理解函数的应用过程:“将输入经过一定的变换和处理后得到预定的输出,函数就是一个盒子,可将反复执行的代码封装为函数”,再适时地讲解“形参和实参,直接修改形参的值不会影响实参”。
        在学习完本题后,可以补充“验证.py文件可以通过模块来导入,说明Python源文件是模块”的内容。接下来,再教学“模块的导入及应用”就非常容易了,Python的教学内容补充非常重要,要考虑到补充内容的适时性和实用性,也要实现对后面知识点教学的铺垫。
        (四)“实践与体验”
        本题是一个综合的例题,教材提供了“实践与体验”步骤的详细资料,帮助学生合作或独立完成。在教学中可以通过微课,安装“Pycharm”,并独立完成教材“绘制六边形的过程”试题或“思考与练习第6题”试题,熟悉Pycharm编程环境。
        学生输入程序后,可指导学生用file->settings->projectinterpreter,双击“pip”,搜索“pillow”,点击“pillow”,用左下角“install”来安装,或直接在库(模块)的提示上加载库(模块)。当库(模块)都加载成功后,再通过修改“RBG”参数调试程序。
        这一类数字图像处理综合例题,能够实现用项目来检验和再学习。让学生知道“用Python程序设计语言可编写具有图像处理功能的应用程序,如图像的大小和颜色调整、图像的合成、图像的滤镜添加等”。教师要关注学生核心素养的培养,通过解决综合性较强的复杂问题,让学生自觉主动地分析问题背景,从纷繁复杂的线索中提取有效信息,明确已知条件和求解的问题;通过小组讨论方式,在合作解决问题的过程中,培养学生团队协作,共享信息的意识。
        (五)“项目挑战例题”
        本题是应用Python语言实现对数据进行管理和统计的项目挑战例题,学生会使用相关数字化工具(Excel和Python)通过对生活中事物关联进行调查和数据整理,形成数据表,最终抽象和统计出数据背后的规律。教学时,建议创设一个真实的情境(可选用“寻找关联次数最多的商品”这个项目),学生统计并填写一个数据表,也可以用虚拟软件生成数据表,旨在分析数据之间的关联。
        程序在编写过程中常常会遇到困难,可以通过小组合作,查找相关资料的方法应对,教师也要进行细致的指导和项目实施方向的把控。编程输出结果后,可根据程序结果分析和讨论一下数据关联的实际意义,发掘出对新观念和新事物的积极学习态度、预测、理性判断和负责任的应对策略,在信息社会中有一定的信息安全意识与能力,能够遵守信息法律法规,信守信息社会的道德与伦理准则,在现实空间和虚拟空间中遵守公共规范,既能有效维护信息活动中个人的合法权益,又能积极维护他人合法权益和公共信息安全;关注信息技术革命所带来的环境问题与人文问题。
        高中阶段的学生已经形成了一定的思维习惯,在教学Python时,应以解决实际问题的项目式学习为基础,在程序设计时形成“随用随取”的编程方法,避免枯燥的语句和语法讲解,关注学习过程的知识积累和评价,通过自主学习与合作学习突破学习难点,鼓励资料查找和新工具的使用,形成独立使用Python建立抽象模型、构建算法、编写和调试程序的创新能力。
参考文献
[1]董国付,应根球.Python编程基础与案例集锦[M].北京:电子工业出版社,2019:126-127.
[2] 闫寒冰.信息技术教材(必修1):数据与计算[M].杭州:浙江教育出版社,2019:87.
[3] 中华人民共和国教育部.普通高中信息技术课程标准[M].北京:人民教育出版社,2017.

投稿 打印文章 转寄朋友 留言编辑 收藏文章
  期刊推荐
1/1
转寄给朋友
朋友的昵称:
朋友的邮件地址:
您的昵称:
您的邮件地址:
邮件主题:
推荐理由:

写信给编辑
标题:
内容:
您的昵称:
您的邮件地址: