福州市周成名师工作室

项目八:设计批量数据处理算法【福建师大附中—王可可  指导老师:周成】

发表时间:2021-03-08 14:11作者:王可可


项目八:设计批量数据处理算法

                             ----以手机通讯录制作为例

学校:福建师范大学附属中学   学科:信息技术   汇报人:王可可   时间:2021.1.5


教学意图:

为了提升学生数字化学习与创新意识,培养学生计算思维。围绕学科核心素养展开项目式教学。本项目以5G时代手机运用作为背景引入,简单回顾手机的基本操作,以手机通讯录制作、手机敏感词汇过滤系统为项目主题。通过“自顶向下,逐步求精”的方法设计算法,引导学生一步步完成项目要求,以达到数据批量操作的python实现--列表。

教学目标:

认识python数据存储的基本方式:列表。

掌握列表的基本操作:添加,引用及切片(整体引用)、更新、删除等。

设计算法完成手机通讯录和手机敏感词汇过滤系统。

教学重点:

Python列表的认识及基本操作。

自顶向下,逐步求精的算法设计方法。

教学难点:

算法设计与程序设计过渡。

教学步骤:


教学环接
教师活动
学生活动
引入
(3分钟)
播放视频:《1G到5G:1分钟带你了解移动通信的发展史》
设计目的:
激发课堂气氛,引入项目主题
提出问题:
我们站在巨人的肩膀上引来了5G时代,但是快速发展的今天,我们不能浮躁,社会提倡的工匠精神必须从我们学生时代开始培养。因此我们今天将以手机作为主题展开我们的项目探究。项目将以设计最底层也是最重要的手机通讯录开始。下面我们思考一个问题,手机通讯录主要包含哪些功能?
1、观看,聆听
2、回答问题“手机通讯录包含哪些功能?”
项目引导1
(3分钟)
1、介绍“自顶向下、逐步求精”的算法设计核心概念:先进行顶层设计,再对各组成部分进行细化。
2、项目:手机通讯录顶层算法设计
“通讯录管理系统”:
1)增加姓名和手机号
2)删除姓名和手机号
3)修改手机号
4)查询所有用户
5)根据姓名查找手机号
6)退出
3、依据顶层设计展示制作的程序模块图
注释:顶层设计中的步骤,并不能直接对应一条明确的程序语句,还需要进行细化设计,将顶层设计“模块化”,每一步为一个独立的功能模块。
1、了解“自顶向下,逐步求精”算法设计核心思想。
2、设计通讯录管理系统顶层算法
项目引导2
(6分钟)
1、提供顶层设计模块,引导学生开始分模块逐步设计。
设计目的:认识列表,及列表引用
2、设计模块1)的算法--增加姓名和手机号。
“增加姓名和手机号”算法细化:
1.1)输入姓名给字符串变量
1.2)如果通讯录里有此姓名则跳过,否则将姓名添加到通讯录最后。同时输入手机号并在通讯录里存入手机号
1.3)打印“输入完成”
第1.2)步算法细化:
1.2.1)单分支判断姓名是否出现在姓名列表,如果是,打印“已有此联系人请重新输入”
1.2.2)如果姓名列表没有此姓名,则使用append方法将姓名添加到姓名列表
1.2.3)输入手机号添加到对应手机号列表,并打印“输入完成”


设计目的:掌握列表操作功能一:添加元素
根据设计模块1的算法完成模块1语法细化程序,并成功运行。
掌握列表引用及添加元素到列表的方法。


4、项目引导3
(6分钟)
1、设计模块2)的算法--删除姓名和手机号。
“删除姓名和手机号”算法细化:
2.1)输入要删除的联系人到字符串变量
2.2)找到联系人在姓名列表内的位置
2.3)在姓名列表内删除此姓名
2.4)对应位置的手机号列表内删除手机号
2.5)打印“删除完成”
设计目的:
1、认识列表索引查找方法:index()函数
2、认识列表元素内容删除方法:remove()函数
3、认识列表元素位置删除方法:del 操作
1、根据设计模块2的算法完成模块2语法细化程序,并成功运行。
2、掌握根据元素查询索引的方法
3、掌握列表元素内容删除方法
4、掌握根据列表元素位置删除的方法
5、项目引导4
(6分钟)
1、设计模块3)的算法--修改手机号
“修改手机号”算法细化:
3.1)输入要修改的联系人姓名
3.2)找到联系人姓名在列表内的位置
3.3)通过位置找到手机号列表对应位置,并对此位置的号码进行修改
3.4)打印修改完成
第3.3)步算法细化:
3.3.1)输入要修改的手机号到字符串变量
3.3.2)根据手机号列表对应位置,直接进行新手机号赋值,即完成修改。
设计目的:
认识修改列表元素方法
根据设计模块3的算法完成模块3语法细化程序,并成功运行。
掌握修改列表元素的方法


项目引导5
(3分钟)
设计模块4)的算法--查询所有用户
“查询所有用户”算法细化:
4.1)循环遍历姓名列表并输出
设计目的:结合列表复习循环结构
1、根据设计模块4的算法完成模块4语法细化程序,并成功运行。


项目引导6
(5分钟)
设计模块5)的算法--根据姓名查找手机号
“根据姓名查找手机号”算法细化:
5.1)输入需要查找的联系人给字符串变量
5.2)找到联系人姓名在列表内的位置
5.3)通过位置找到手机号列表对应位置,并输出手机号
设计目的:列表的引用练习
1、根据设计模块5的算法完成模块5语法细化程序,并成功运行。


项目汇总
(5分钟)
1、将以上5个细化的算法模块通过最终的整合完成“手机通讯录管理系统”的制作。
2、总结整个项目中涉及到的列表的基本操作,和“自顶向下、逐步求精”的算法设计方法的优点。
2、布置“手机敏感词汇过滤系统”制作小作业。
1、完成5个算法细化模块的汇总,形成一个完善的手机通讯录管理系统项目。





邮箱:contact@fkadjkhsf.co      QQ:258506508