内容正文:
【课题与课时】
课题:列表、元组和字典
课时:1课时
【学习目标】
1.认识列表、元组和字典的数据结构,明白它们之间的联系和区别。
2.学会列表、元组和字典的定义和调用,掌握简单的操作函数。
3.在程序设计中根据需要,灵活使用列表、元组和字典表达、处理数据。
4.学会冒泡排序法的算法。
【评价任务】完成学习任务1,课堂检测。
完成学习任务2,课堂检测。
完成学习任务3,课堂检测。
重点:对列表的引用、排序、插入、删除等操作。
难点:列表、元组和字典的区别和使用场景。
教具准备:安装有python3.6的计算机
【学习过程】
环节名称
活动设计(任务、步骤、要求、成果)
设计意图
反思
第一环节
生活发现
1. 生活情境
“五岳归来不看山,黄山归来不看岳”,三山五岳乃是我国境内的名山,以其优美的风景、险峻雄奇的气势征服了众多的国内外游客,你们有没有去旅游过呢?现在知道泰山海拔1545米、华山海拔2154.9米、衡山海拔1300.2米、恒山海拔2016.1米、嵩山海拔1491.71米,你们能不能用找出五岳中最高的是那一座,最矮的是那一座,平均海拔高度是多少呢?如果给你更多的山峰海拔,比如全国所有高峰的海拔或者全球所有高峰的海拔,你还能不能快速的找到呢?
1. 问题提出
引导策略:引导学生把特殊数据扩展到一般数据。
如:更多的山、更多数据的集合等。
1.讨论问题
(1)怎么求最大值和最小值?
(2)怎样求平均值?
(3)有没有更加方便的方法实现上面的计算?
引导策略:引导学生将众多数据合成一个整体思考。
如:如果把所有的山看作一个整体并用统一的方法来处理,是不是更加方便?
2.生成问题
(1)能否用循环语句配合分支语句来求解?
(2)循环语句计算的具体算法是什么?
(3)如果能将五座山的高度集合成一个整体进行计算是否会更加好理解?
(4)对一组聚合在一起的数据能够进行哪些操作?
1. 我的设想
(小组讨论____分钟)
1.小组代表发言,汇报自己小组想出来的有价值的问题。
2.组间进行评价,讨论算法的可行性和。
第二环节庖丁解牛
引导策略:首先肯定学生所讨论问题,然后让学生结合已有知识能否解决,引导需要学习本堂内容能够快速解决以上问题。
如:刚才同学们讨论的几个问题很有意义,如果使用循环语句来解决问题完全可以,但是代码量会比较大,算法也更复杂。我们首先试着用循环语句来解决,在学完本课内容后就可以非常简单的解决该问题了。
我们之前学习过变量、for循环、while循环还有if分支语句,合理的应用不同的语句结构都可以解决本问题,下面分组使用自己设计的不同算法来试着解决。
1. 使用变量和循环、分支语句实现算法
步骤1: 画出流程图
磨刀不误砍柴工,在编写代码之前绘制流程图可以帮助我们理清逻辑结构、明确思路。
1.for循环流程图
2.while循环流程图
步骤2:编写代码
分组合作编写代码
代码截图:
1、for循环
2、while循环
步骤3:运行调试
1.调试运行,遇到疑问组内讨论,调试完成后小组间比较结果。
2.函数float()的作用?
3.为什么imax和imin不能直接用max和min?
二、使用列表来解决五岳问题
步骤1:认识列表
列表(list)是包含0到多个对象引用的序列。列表的定义使用“[]”把数据括起来,其中的每一个数据(称作元素)用“,”隔开。列表内可以包含任何数据类型,比如数字、字符串,同一个列表也可以包含不同数据类型。
小练习:将五岳的高度存放到一个列表中,并打印列表。
步骤2:调用列表元素
调用列表中某一个元素,需要使用列表的下标,列表的下标从0开始,因此第1个元素就是height[0]。
小练习:用print函数打印输出height列表中第1和第3个元素。
步骤3:遍历列表
通常用for循环遍历height列表的数据。
小练习:打印显示每个元素的值。
小组讨论
1、i在每次循环时的值是多少?
2、若要求得列表中所有元素的和,代码该如何编写?
步骤4:列表的排序
可以使用sort( )函数对列表进行排序。
小练习:将五岳列表按照高度从小到大排序。
对列表而言还有count()、index()、reverse()等函数可以进行排序和统计,请同学们试验一下这几个函数的作用。
步骤5:结合以上所学用列表的方式实现五岳问题
1、结合排序和元素调用可以得出最大值和最小值。
2、通过for循环遍历列表可以计算列表的和。
3、分组进行设计,要设计流程图,完成后进行分享评价。
流程图:
代码截图:
引导策略:引导学生注意排序算法和遍历列表的方法。
如:你能试着使用循环语句来实现列表数据的排序吗,有几种算法,那种更快