粤教清华版信息技术八上 1.1《处理批量数据》 教案(表格式,3课时)

资源下载
  1. 二一教育资源

粤教清华版信息技术八上 1.1《处理批量数据》 教案(表格式,3课时)

资源简介

知识探究
课时课题 第1节 处理批量数据 第3课时 操作列表及应用
课时目标 1.通过受邀人员管理程序输出和现场赛计分系统的求最值功能,了解遍历列表及批量访问数据的方法。 2.通过判断回文数程序,了解列表切片(使用列表的一部分)及快速访问部分批量数据的方法。 3.通过判断回文数程序的不同版本,了解Pythonic,加强代码规范意识。 4.通过石头剪子布游戏的多种解决方案,进一步了解同解决同一问题可能会有多种方法。
教学准备 机房、编程平台(如jupyter notebook,预先调试好)、PythonTutor(预先调试好)、学生素材、教学PPT等
导学流程
导学过程
导学设计 意图交流
环节一、问题探讨 (1)问题导入:以受邀人员管理程序为例,如何把所有人的姓名都输出呢?在现场赛计分程序中的分数列表中,如何不用排序的方法找出最大值和最小值呢?在你的项目中是否有同类型的问题要解决? (2)小组讨论:分小组讨论,各组代表进行汇报。 环节二、自主阅读 (1)学习内容:操作列表(1.3.1遍历列表、1.3.2数据排序、拓展阅读:代码规范与Pythonic)。 (2)学习要求:先进行自主整体阅读,再进行组内讨论(疑难互解、操作列表能解决哪些问题)。 (3)操作与实践:可使用PythonTutor和编程平台进行调试,理解相关内容,遇到内容先自我尝试,再小组合作交流,还不能解决的向其他小组老师求助。 环节三、教师导学 (1)重点内容导学:两种遍历方法(索引遍历和列表项遍历)的区别;切片的起始与结束(闭开区间)和步长;求最值过程的条件迭代等。(具体参考课本) 环节四、体验活动 (1)先了解石头剪子布游戏规则,然后进行试玩。 (2)阅读教材石头剪子布游戏代码2种不同代码及优化分析说明,在平台上分别进行调试。第二种方法借助了列表进行优化,大减少了代码量。 (3)体验活动:完善石头剪子布。先画出流程图(参考流程如图),对输入的处理及求选手得分的环节都需要进一步细化设计。 (4)根据流程图写出代码(逐步细化与完善)。 (5)调试运行,组内交流。 (6)展示、汇报与交流。 环节五、项目应用 讨论相关知识在小组项目中解决问题的作用并做好记录。及时做好项目的纸质讨论材和电子档案的更新、整理与保存。 项目情景 善用工具 先设计流程图,再根据流程图去写代码,并逐步细化,更有利于培养计算思维。知识探究
课时课题 第1节 处理批量数据 第1课时 列表基础
课时目标 1.通过受邀人员管理程序所需的数据实例,了解列表基础(认识列表、访问列表和维护列表)及其应用情景。 2.通过受邀人员管理程序的数据维护(增、删、改)操作,建立问题分解意识和抽象建模能力。 3.通过PythonTutor可视化变量呈现工具,熟悉网络平台中的技术工具、软件系统的功能与应用,并协助了解列表的原理。 4.通过“完善受邀人员管理程序”的体验活动,提高程序开发能力,了解反馈对系统优化的作用。
教学准备 机房、编程平台(如jupyter notebook,预先调试好)、PythonTutor(预先调试好)、学生素材、教学PPT等
导学流程
导学过程
导学设计 意图交流
环节一、问题探讨 问题导入:以“受邀人员管理程序”为例,在程序设计中,如果要表示很多个变量,比如 50 个同学的姓名,如何用变量来表示和存储呢?小组项目中是否也有同样的问题?要解决这类问题需要学习哪方面知识? 小组讨论:分小组讨论,各组代表进行汇报。 环节二、教师导学 (1)程序调试平台介绍:向学生介绍编程平台(建议使用jupyter notebook)启动方法,笔记本文档(.ipynb文件)打开、保存与重命名方法,程序运行方法等。 (2)PythonTutor调试方法:双击PythonTutor代码可视化服务器.bat,出现成功提示后,在浏览器中输入http://localhost:8003/live.html,在网页中输入代码进行调试(如图)(说明:教师进行现场演示或提供微视频)。 重点内容导学:什么是列表?列表如何表达?如何取一个元素?如何增、删、改?用一个实例来演示与说明。(具体参考课本) 自主学习方法提示:先通读内容,遇到代码要进行尝试,如果遇到错误要耐心解决。先独立阅读与调试,再小组互学,共同解决遇到的问题。 环节三、自主学习与实践 学习内容:列表基础(认识列表、访问列表和维护列表)。 学习要求:阅读、可视化呈现助学、jupyter进行代码编写。 先自主学习(还可参考拓展阅读和应用编程系统的帮助系统解决),再小组合作,如遇疑难向教师求助。 环节四、体验活动 (1)尝试运行,完善受邀请人员管理程序 (2)阅读代码,并尝试编写待开放功能。 # 受邀人员管理程序 menu = '''受邀人员管理程序\n 1.查看名单 2.删除人员 3.增加人员 4.修改人员 5.退出 请选择(1-5):''' names = ['小王', '张三', '李四', '小明', '小杨'] while True: c = int(input(menu)) if c == 1: print('编号 姓名') for i in range(len(names)): print('{} => {}'.format(i, names[i])) elif c == 2: n = int(input('请输入要删除的人员编号:')) del names[n] print('已删除编号为{}的人员'.format(n)) elif c == 3: print('待开放') # 参考代码: # name = input('请输入要增加的人员姓名:') # names.append(name) # print('{}已增加'.format(name)) elif c == 4: print('待开放') # 参考代码: # n = int(input('请输入要修改的人员编号:')) # name = input('你要把{}修改为:'.format(names[n])) # names[n] = name # print('已修改完成!') elif c == 5: break print('再见!') (3)调试运行,组内交流。 (4)展示、汇报与交流。 环节五、项目应用 讨论相关知识在小组项目中解决问题的作用并做好记录。 及时做好项目的纸质讨论材和电子档案的更新、整理与保存。 创设子项目情景 善用工具 可视化工具是很好的学习支架 突出自主性 巩固知识, 学以致用知识探究
课时课题 第1节 处理批量数据 第2课时 组织列表
课时目标 1.通过设计现场赛计分程序实例,了解组织列表(列表数据转换、排序)及其应用情景。 2.通过现场赛计分程序的批量数据转换和排序操作的多种实现方法,知道同解决同一问题可能会有多种方法。 3.通过“现场赛计分程序”的实践活动,提升算法设计能力,并知道程序设计要从用户需求出发。
教学准备 机房、编程平台(如jupyter notebook,预先调试好)、PythonTutor(预先调试好)、学生素材、教学PPT等
导学流程
导学过程
导学设计 意图交流
环节一、问题探讨 (1)问题导入:以“现场赛计分程序”为例,在程序设计中,如何对批量数据进行组织(如把字符串转化为数字,进行排序)?小组项目中是否也有同样的问题?要解决这类问题需要学习哪方面知识? (2)小组讨论:分小组讨论,各组代表进行汇报。 环节二、教师导学 (1)程序调试平台介绍:向学生介绍编程平台和PythonTutor调试方法。 (2)重点内容导学:如何获取批量数据(字符串的split方法)并转换成数值?如何用内置方法或函数进行排序?如何对排序后的数据取最大值和最小值?如何对列表数值求和?(具体参考课本) (3)自主学习方法提示:先通读内容,遇到代码要进行尝试,如果遇到错误要耐心解决。先独立阅读与调试,再小组互学,共同解决遇到的问题。 环节三、自主学习与实践 (1)学习内容:组织列表(数据转换和数据排序)。 (2)学习要求:阅读、可视化呈现助学、jupyter进行代码编写。 (3)先自主学习(还可参考拓展阅读和应用编程系统的帮助系统解决),再小组合作,如遇疑难向教师求助。 环节四、实践活动 先画出流程图(如图),对输入的处理及求选手得分的环节都需要进一步细化设计。 根据流程图写出代码(逐步细化与完善)。 调试运行,组内交流。 (4)展示、汇报与交流。 环节五、项目应用 讨论相关知识在小组项目中解决问题的作用并做好记录。及时做好项目的纸质讨论材和电子档案的更新、整理与保存。 项目情景 善用工具 先设计流程图,再根据流程图去写代码,并逐步细化,更有利于培养计算思维。

展开更多......

收起↑

资源列表