版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
高一信息技术Python函数及其应用教学设计【教材分析】本课选自粤教版(2019)高中信息技术必修1《数据与计算》第四章第一节,是程序设计基础模块中承上启下的关键内容。此前学生已经掌握了程序的顺序结构、选择结构和循环结构,能够编写解决简单问题的完整程序,但代码普遍存在重复书写、逻辑冗长、可读性差的问题。函数概念的引入,正是解决这一痛点的钥匙。教材以"把大象装进冰箱"式的任务分解为例,引导学生理解分治思想,进而引出函数的定义、调用与参数传递。本节内容包含三个核心知识点:函数的概念与作用、函数的定义与调用语法、参数与返回值的使用。其中,参数传递是理解的难点,函数模块化思维是素养的落点。从学科核心素养看,本课直接指向计算思维中的"抽象"与"分解"两项关键能力。学生需要学会把一个复杂问题拆解为若干功能独立的子任务,用函数封装每个子任务,再通过主程序组织调用。这种思维方式不仅服务于编程,更是解决一切复杂工程问题的通用路径。【学情分析】授课对象为高一年级学生。经过前三个单元的学习,学生已经能够读懂并编写不超过三十行的Python程序,熟悉input、print等基本语句,掌握for循环和if判断的用法。多数学生对编程保持着新鲜感,动手意愿强,但存在三个明显的学习障碍。其一,学生对"为什么要用函数"缺乏真实体验。此前的程序规模太小,没有函数也能完成,直接讲授函数优点容易流于说教。其二,形参与实参的对应关系抽象,学生常混淆定义位置和调用位置的变量含义。其三,部分数学基础较弱的学生容易把数学函数f(x)与程序函数混为一谈,需要教师在概念衔接处做好辨析。基于以上分析,本课采用"先制造麻烦,再给出工具"的教学策略,让学生在重复劳动中切身感受封装调用的价值,再水到渠成地建构函数概念。【教学目标】1.理解函数的概念,能用自己的语言说明函数在程序组织中的作用,体会模块化编程的思想。2.掌握def语句定义函数的基本语法,能够正确定义、调用一个含参数和返回值的函数。3.能辨析形式参数与实际参数的关系,理解return语句的执行过程。4.在"班级成绩统计系统"项目实践中,能将一个综合任务分解为若干函数,初步形成问题分解的计算思维。5.在调试与协作过程中养成规范命名、书写注释的良好编程习惯。【教学重难点】教学重点:函数的定义格式与调用方法,参数与返回值的使用。教学难点:形参与实参的对应关系;将实际问题分解为函数模块的思维方法。【教学准备】多媒体机房,Python3.x环境或在线编程平台,教师端广播软件,项目任务单,半成品代码文件,课堂即时评价量表。【教学过程】一、情境导入:一段让人抓狂的代码(6分钟)上课铃响,教师在大屏幕上展示一段班主任的真实工作场景:期中考试后,班主任需要统计全班五十名学生的语数英三科成绩,计算每人的总分。随后投出一段学生容易写出的"朴素"代码——对每个学生都写一遍三科相加的语句,屏幕上密密麻麻十几行高度雷同的加法代码。教师提问:这段程序能运行吗?学生观察后回答可以。教师追问:如果年级主任要求改成"总分乘以各自的难度系数再求和",需要改多少处?学生数一数,屏幕上有五十个加法表达式,就要改五十处,漏一处就出大错。课堂上响起一片吸气声。教师顺势点出本课主题:优秀的程序员从不做重复的体力劳动。Python早就为我们准备了一种工具,可以把一段具有特定功能的代码打包成一个"零件",想用的时候直接取用,改一处处处生效。这个零件就叫作函数。板书课题:Python函数及其应用。设计意图:用"改五十处代码"的痛感制造认知冲突,让学生在真实需求中体会模块化封装的价值,避免概念先行、空洞说教。从班主任工作切入,贴近校园生活,激活学习动机。二、新知建构:认识函数(12分钟)(一)从数学函数到程序函数教师提问:数学课的f(x)=2x+1,给你一个x,你得到什么?学生回答得到一个确定的y。教师指出程序中的函数同样是"输入—处理—输出"的机器:给它原料(参数),它按要求加工,最后交还产品(返回值)。数学函数只处理数,而Python函数能处理文本、列表、图片,功能强大得多。同时教师用一行代码展示内置函数print、len,指出学生其实早就在用别人写好的函数,今天要学的是自己造函数。(二)函数的语法结构教师现场敲下本课第一个函数:defadd(a,b):result=a+breturnresult逐行剖析:def是告诉Python"我要定义一个新函数"的关键字;add是函数名,命名规则和变量一样,要见名知意;括号里的a和b是形式参数,是预留的"接口";冒号不能丢;函数体必须缩进四个空格,缩进是Python划分代码块的标志;return把加工结果送回给调用者。教师强调三个初学者最容易栽跟头的细节:冒号遗忘、缩进错误、把return误写成print。随后用一句话概括两者的区别:print只是让结果在屏幕上"露个脸",程序拿不到它;return才是把结果真正"交出去",可以赋给变量继续参与运算。(三)调用函数教师在定义下方接着输入:s=add(85,92)print(s)运行后屏幕显示177。教师提问:这行代码里的85和92去了哪里?引导学生建立对应关系:调用时的85会传递给形参a,92传递给形参b,它们叫作实际参数。教师在黑板上画出示意图:实参按位置一一对应装入形参,函数体内运算完毕,return把result的值送回等号左边,变量s接住结果。为了检验理解,教师抛出辨析题:add("语文","数学")会发生什么?多名学生猜测报错,教师运行演示,屏幕显示"语文数学"。学生恍然大悟——参数传什么类型,函数就按什么规则处理,这里加法变成了字符串拼接。这一小波折加深了学生对参数传递本质的理解。设计意图:借助数学函数搭建概念桥,降低抽象门槛;采用"教师示范—逐行拆解—图形化示意—意外辨析"四步走,让语法细节在真实运行中落地,而非背记。三、初阶任务:牛刀小试(10分钟)学生打开机房编程环境,完成两个递进练习。练习一:定义函数max2(a,b),接收两个数,返回其中较大的一个。要求不许使用内置max函数。练习二:定义函数is_even(n),判断一个整数是否为偶数,是则返回True,否则返回False。教师巡视,重点观察三类典型错误并收集到广播端:一是函数体内用print代替return;二是调用时函数名拼写不一致;三是忘记冒号。练习结束后,教师选取一份含典型错误的作业投屏,请"代码医生"上台诊断,全班共同修改。随后教师展示参考代码并追问:is_even返回的是布尔值,这个函数可以怎么用?引导学生写出ifis_even(score):这样的判断语句,体会函数返回值参与后续逻辑计算的威力。设计意图:两个练习覆盖"数值返回"与"布尔返回"两种典型形态,难度低、反馈快,让每个学生都能尝到定义函数的成就感。以"代码医生"形式开展同伴纠错,把错误转化为教学资源。四、项目实践:班级成绩统计系统(20分钟)(一)任务发布与分解教师发布本课核心项目:帮助班主任完成成绩统计。总任务为——给定若干名学生的姓名和语数英三科成绩,程序输出每人的总分、全班的平均分,并找出总分最高的学生。教师引导学生做问题分解:这个任务能拆成哪几件小事?小组讨论两分钟后,各组给出拆分方案,教师板书归纳出四个功能模块:计算单个学生总分、计算全班平均分、找最高分学生、格式化输出成绩单。教师宣布:每个模块写一个函数,主程序像搭积木一样把它们组装起来。(二)半成品代码协作开发教师发放半成品代码框架,其中get_average函数已写好作为范例,其余三个函数留空,只给出函数名、参数说明和功能注释。两名学生为一组结对编程,一人执键盘,一人当参谋,十分钟后交换角色。任务清单:任务A:完成get_total(score_list)函数,传入一个学生的三科成绩列表,返回总分。提示:可以用循环累加,体会列表作为参数传递的用法。任务B:完成find_top(students)函数,传入全班成绩数据,返回总分最高的学生姓名。提示:先假设第一个学生最高,再逐个比较刷新。任务C:完成show_report(name,total)函数,按"姓名:XXX总分:XXX"的格式输出一行成绩单。这个函数没有return,引导学生体会"只做事情、不交结果"的函数同样合法。(三)调试与互测各组运行整合后的程序,用教师提供的五人测试数据验证:正确输出应为每人总分、全班平均分及最高分者姓名。教师要求每组故意在数据中加入一名三科满分学生,检验find_top边界情况是否正确。巡视中教师重点关注:是否出现函数定义在调用之后导致NameError的情况(引出"先定义后调用"的顺序规则);是否有组为get_total传入了错误的参数个数(引出实参与形参个数必须匹配的约束)。(四)成果展示挑选两个完成度较高且思路不同的小组上台演示。一组在get_total中用for循环累加,另一组巧妙地在函数体内直接调用了内置sum函数。教师点评:函数内部也可以使用别人造好的零件,封装与复用是层层嵌套的,这正是工程思维的精髓。设计意图:项目承载真实情境,四个子任务分别指向累加算法、最值算法、无返回值函数三个训练点;"半成品+结对编程"既控制难度、保证达成度,又培养协作能力;故意注入边界数据,渗透测试意识。五、拓展提升:函数的进阶一瞥(4分钟)教师展示一段代码:defgreet(name="同学"):print(name+",你好!")greet()greet("李明")运行后学生看到默认值参数的妙用:不传参数时用默认值,传了就按传入值来。教师再展示一个返回多个值的函数:return可以同时送回总分和平均分,用两个变量同时接收。教师说明这些内容将在选修模块深入学习,今天只需种下一颗种子。六、课堂小结与评价(3分钟)学生对照黑板上的知识框架自我梳理:为什么要有函数——消灭重复、化整为零;怎么定义函数——def、函数名、参数、冒号、缩进、return;怎么用函数——函数名加括号、实参对形参、返回值要接住。最后学生填写课堂评价量表,从"我能独立定义函数""我能说明形参实参的区别""我能把任务拆成函数模块"三个维度自评打星,组长收齐交教师,作为下节课分层任务的依据。【板书设计】主板书左侧为语法区:函数定义五要素(def、函数名、形参、冒号缩进、return);中间为示意区:实参→形参→加工→return结果的数据流向图;右侧为项目区:成绩统计系统的四个功能模块及其组装关系。【作业设计】基础层:编写函数area_circle(r),接收半径,返回圆面积,并对两个不同半径调用测试。提高层:编写函数is_prime(n)判断素数,再利用该函数找出100以内的所有素数并输出。挑战层:把本课成绩统计系统扩展为按总分从高到低输出全班排名表,鼓励函数之间互相调用。【教学反思预设】本课以"改写五十处代码"的痛点开场
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年设备监理师职业资格考试(设备监理基础知识和相关法规)历年参考题库含答案详解
- 2026年定日县中小学幼儿园教师招聘笔试备考题库及答案解析
- 2026保亭黎族苗族自治县卫健系统面向社会招聘事业编制及员额制工作人员(第3号)笔试备考题库及答案详解
- 2026年徽县事业单位人员招聘考试模拟试题及答案解析
- 2026湖南岳阳市图书馆就业见习招聘3人笔试备考题库及答案详解
- 2026年昆明市五华区社会保险中心招聘公益性岗位人员(1人)考试备考题库及答案详解
- 2026年旬邑县事业单位人员招聘笔试备考试题及答案解析
- 2026年龙江县中小学幼儿园教师招聘笔试备考题库及答案解析
- 四川省北川中学 2026年下半年公开考核招聘高中教师预笔试参考题库及答案详解
- 2026年安徽矾花源景区运营管理有限公司(筹) 招聘14人笔试参考题库及答案详解
- 学校食堂副食品配送服务投标方案(技术方案)
- DL-T2078.2-2021调相机检修导则第2部分:保护及励磁系统
- JJG 326-2021 转速标准装置
- 预防艾滋病、梅毒和乙肝母婴传播工作规范(2020年版)
- 新教师入职培训新学期新教师入职培训课件
- JGT223-2017 聚羧酸系高性能减水剂
- 华为光芯片笔试题
- JJG 134-2023磁电式速度传感器
- A320系列飞机绕机检查工作标准
- 新人教版五年级下册语文阅读理解(15篇)
- 临床血液学检验-绪论
评论
0/150
提交评论