项目八 分析历史气温数据——设计批量数据算法(以手机通讯录制作为例)课件(16张ppt)+教案+素材

文档属性

名称 项目八 分析历史气温数据——设计批量数据算法(以手机通讯录制作为例)课件(16张ppt)+教案+素材
格式 zip
文件大小 29.1MB
资源类型 教案
版本资源 沪科版(2019)
科目 信息技术(信息科技)
更新时间 2021-09-24 22:42:34

文档简介

(共15张PPT)
必修一
项目八:
设计批量数据处理算法
以手机通讯录制作为例
从1G到5G
关于手机通讯录你知道多少?
算法设计核心概念
01
“通讯录管理系统”:
1)增加姓名和手机号
2)删除姓名和手机号
3)修改手机号
4)查询所有用户
5)根据姓名查找手机号
6)退出
自顶向下、逐步求精
顶层设计
02
“通讯录管理系统”:
1)增加姓名和手机号
2)删除姓名和手机号
3)修改手机号
4)查询所有用户
5)根据姓名查找手机号
6)退出
1、定义姓名列表
2、定义手机号列表
while
True:
3、输入选择的功能号
4、如果输入数字不在功能列表内[1,2,3,4,5,6]
input("输入有误请重新输入")
5、否则:
如果
b
==
1:
#增加姓名和手机
如果
b
==
2:
#删除姓名
如果
b
==
3:
#修改手机号
如果
b
==
4:
#查询所有用户
如果
b
==
5:
#根据姓名查找手机号
如果
b
==
6:
#退出
否则:
print("输入有误请重新输入")
name
=
[]
number
=
[]
while
True:
b
=
int(input())
if
b
not
in
[1,
2,
3,
4,
5,
6]:
input("输入有误请重新输入")
else:
if
b
==
1:
#增加姓名和手机
elif
b
==
2:
#删除姓名
elif
b
==
3:
#修改手机号
elif
b
==
4:
#查询所有用户
elif
b
==
5:
#根据姓名查找手机号
elif
b
==
6:
#退出
else:
print("输入有误请重新输入")
顶层设计--关于列表
02
列表:批量数据在程序中进行表示的方法
name=[“马化腾”,“马云”,“李彦宏”]
name[0]
#引用“马化腾”
first=name[1]
#引用“马云”并赋值给变量first
name[0:2]
#引用列表元素从索引0到1
设计模块1--增加姓名和手机号
03
“增加姓名和手机号”算法细化:
1.1
输入姓名给字符串变量
1.2
如果通讯录里有此姓名则跳过,否则将姓名添加到通讯
录最后。同时输入手机号并在通讯录里存入手机号
1.3
打印“输入完成”
第1.2步算法细化:
1.2.1
分支判断姓名是否出现在姓名列表,如果是,打印
“已有此联系人请重新输入”
1.2.2
如果姓名列表没有此姓名,则使用append方法将姓名
添加到姓名列表
1.2.3
输入手机号添加到对应手机号列表,并打印“输入完成”
设计模块1--增加姓名和手机号
03
append方法:添加元素到列表末尾
name=[“马化腾”,“马云”,“李彦宏”]
name.append(“任正非”)
#添加任正非到列表末尾
设计模块2--删除姓名和手机号
04
“删除姓名和手机号”算法细化:
2.1)输入要删除的联系人到字符串变量
2.2)找到联系人在姓名列表内的位置
2.3)在姓名列表内删除此姓名
2.4)对应位置的手机号列表内删除手机号
2.5)打印“删除完成”
设计模块2--删除姓名和手机号
04
index方法:返回元素索引位置
name=[“马化腾”,“马云”,“李彦宏”,“任正非”]
name.index(“任正非”)
#返回列表内“任正非”位置为3
remove方法:删除列表内指定元素
name.remove(“任正非”)
#删除列表内元素“马云”
del方法:删除列表内指定索引位置元素
del
name[0]
#删除列表位置为0的元素
设计模块3--修改手机号
05
“修改手机号”算法细化:
3.1
输入要修改的联系人姓名
3.2
找到联系人姓名在列表内的位置
3.3
通过位置找到手机号列表对应位置,并对此位置的号码进
行修改
name=[“马化腾”,“马云”,“李彦宏”,“任正非”]
name[0]=“雷军”
#替换name列表索引位置0的元素
设计模块4--查询所有用户
06
“查询所有用户”算法细化:
4.1
循环遍历姓名列表并输出
for
i
in
name:
#按元素顺序遍历
print(“所有用户”,i)
for
i
in
range(len(name)):
#按索引顺序遍历
print(“所有用户”,name[i])
设计模块5--根据姓名查找手机号
07
“根据姓名查找手机号”算法细化:
5.1
输入需要查找的联系人给字符串变量
5.2
找到联系人姓名在列表内的位置
5.3
通过位置找到手机号列表对应位置,并输出手机号
项目汇总
08
1、完成“手机通讯录制作”项目。
2、总结:
自顶向下、逐步求精的设计算法方法
列表的基本操作:
1)列表的引用
2)append方法、index方法、remove方法、del方法
作业
09
利用列表设计“手机敏感词过滤系统”。
THANK
YOU
谢谢观看项目八:设计批量数据处理算法
----以手机通讯录制作为例
教学意图:
为了提升学生数字化学习与创新意识,培养学生计算思维。围绕学科核心素养展开项目式教学。本项目以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个算法细化模块的汇总,形成一个完善的手机通讯录管理系统项目。