2021年度第二学期第二次集体备课初稿

第十三课 Python的模块(第一课时)
一、教材简析
函数的优点之一是使用它可将代码块与主程序分离。通过给函数指定描述性名称,可使人更易理解主程序;还可进一步将函数存储在被称为模块的独立文件中,再通过import语句将模块导入主程序中,这样不仅可隐藏程序代码的细节,还能在众多不同程序中重复使用该函数。
本课首先给出模块的概念,并通过“日积月累”栏目指出Python中的模块可分为系统内置模块、用户自定义模块和第三方的开源模块,以便让学生对模块分类有整体认识。其次,指出模块中的函数不能直接使用,需要"先导入再引用",并给出模块导入的两种方法。为了让学生对导入模块中的内置函数有深刻认识,教材在"日积月累"栏目中对内置函数dir( )使用做了介绍。然后,通过实例引出Python中的2个重要内置模块math( )和random( ),并给出这两个内置模块中的常用函数。最后,通过"蒙特卡洛方法计算的值"应用实例深入理解模块的概念和掌握模块的应用。
本课的两个随堂练习,第一题是理解模块的导入和函数的使;第二题是通过模块的定义和使用,实现列表元素的循环移动,以提升模块的应用能力。
二、学情简析
技能方面:通过课堂实例的使用,熟练调用函数,进一步掌握有返回值函数的调用方法,可以独立完成“裴波那契数列”的函数表达;通过随堂练习2,熟练掌握函数的调用及运行过程。
情感态度方面:培养学生的创造性思维能力、探索精神,让学生体验成功的喜悦。
三、单元思路
四、学习目标
(一)三维目标
知识方面:理解模块的概念,掌握模块的导入及函数引用方法。
技能方面:掌握两个常用内置模块math和random,通过学习能够编写简单使用模块的应用程序。
情感态度方面:培养学生的创造性思维能力、探索精神,让学生体验成功的喜悦。
(二)核心素养指向
1、通过项目式教学:求π值的算法表达,提高获取信息的能力,提升信息意识。
2、通过实例应用,培养学生计算机编程能力和算法应用能力。
3、在学习Python模块设计与调用的过程中,体会算法解决问题的基本技巧,培养学生计算思维。
(三)教学重难点
教学重点:理解模块的概念,掌握模块的导入及函数引用方法;掌握两个常用内置模块math和random。
教学难点:通过学习能够编写简单使用模块的应用程序。
五、教学过程
环节一:设问从函数到模块
学习任务:前面我们学习了Python的函数及其使用,我们也感受到了函数的便捷性,我们只要在Python文件内定义好函数,在这个函数的其它地方我们就能方便的进行使用,可是大家想过没有,如果我在A.py内定义了一个函数,想在B.py中进行使用,那要怎么操作呢?
学生活动:讨论、思考算法
小结:函数的便捷性在第12课已经展现出来了,那么如何在b.py中调用a.py的函数呢?引出模块的功能的同时也复习了函数的用法。
关键问题:
1、函数的功能;
2、引出模块的功能
设计意图:
通过设问让学生先回顾函数的功能与使用方法再引出使用模块的意义。
环节二:初识模块
学习任务:什么是模块,模块有什么功能,模块怎么用
学生活动:先看书,思考老师的问题:“模块”的概念。回答:模块就是一个以.py结尾的独立的程序代码的文件,实现了特定的功能。并举例:math模块、random模块等等。
小结:
通过看书及上网查阅百度学生理解Python系统内置模块、用户自定义模块以及第三方的开源模块(如:numpy、matplotlib等)。
设计意图:
理解Python模块的定义及功能,并学习如何通过pip install进行模块安装,为接下来的导入模块做铺垫。
2、环节三:导入模块
学习任务:如何导入模块,并使用模块中的函数?
学生活动:(看书、思考、小组讨论、上机实验)然后回答用from或import方法导入模块。
小结:
通过模块与函数相似之处即先定义后使用。
设计意图:
理解模块的导入方法,能够区别import导入方式和from导入方式的不同之处及导入格式:
import
<模块>.<函数名>()
from导入模块中的指定函数,直接使用该函数,格式如下:
from<模块>import<函数名>
<函数名>()
环节四:课堂作业
课堂练:1:(1)求2的算术平方根
(2)求2的5次方(用power()函数计算)
课题练习2:使用random模块产生10个随机数
#课堂练习3:猜数字,游戏规则给你5次猜数字的机会,数字随机产生
课堂小结:请学生总结本节课的主要知识点
六、设计理念
本节课先通过分析模块的功能及用法,再引入适量的练习以巩固学生的知识达到学以致用。理解模块与函数都是先引用(声明)后使用,理解模块的多种导入方法及区别,培养学生多方位编写程序的途径。
七、习题设计
1、写出python导入模块的关键字((1)import,(2)from
2、 在Python中导入模块中的对象有哪几种方式?
(1) import 模块名 [as 别名];
(2) from 模块名 import 对象名[ as 别名];
(3) from math import *
3、编写函数,判断一个数字是否为素数,是则返回字符串
YES,否则返回字符串 NO。