《Python课程资源》-项目六代码复用_第1页
《Python课程资源》-项目六代码复用_第2页
《Python课程资源》-项目六代码复用_第3页
《Python课程资源》-项目六代码复用_第4页
《Python课程资源》-项目六代码复用_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

枣庄科技职业学院信息工程学院2022—2023学年第2学期教案工作部门:信息工程学院人工智能与大数据教研室课程名称:Python程序设计选用教材:《Python程序设计项目化教程》授课专业:22人工智能二班授课教师:李庆华2023年5月授课章节项目六代码复用授课时间第13周(8课时)授课地点6号教学楼6603教室授课对象2022人工智能二班授课形式理实一体化教学资源教学标准新一代信息技术专业群中课程标准信息化资源教材自带精品课程教学目标知识目标掌握函数的定义和调用。掌握函数参数的传递。掌握函数的嵌套调用和递归调用。掌握变量作用域。能力目标能够编写简单的函数。能够分析具有函数的代码。能够根据实际问题写出函数代码。素质目标1.培养学生政治素质,职业道德规范2.培养学生文化素质,数据收集能力、独立思考能力、自学能力3.培养业务素质,工匠精神教学重点函数的参数传递及变量作用域教学难点书写函数代码解决实际问题学情分析通过课下课上问询学生对前面章节的学习,学生已基本了解编程基础,对函数还不了解,通过本次课的学习让学生掌握函数概念同时加深对程序中函数调用的理解。教学设计宏观上采用讲授法,在微观上采用“任务驱动”、“问题牵引”。以实际演示讲解。在课堂上注意讲、学、做相结合,注重与学生的互动,充分调动学生的积极性,培养学习兴趣、分析问题和解决问题的能力以及自学能力。课前:教师下发学习任务清单,学生明确学习目标及学习任务,进行预习;随后利用课程学习相关教学资源进行自主学习、小组协作、交流研讨,初步了解Python语言的几种结构。课堂:根据以前学习的知识点,引出函数的概念。具体讲解函数的语法结构及其注意事项、参数、返回值、变量作用域、嵌套和递归调用、模块等。通过课后习题的简单函数的编写来体会函数的定义和调用。教师通过讲授及实例编码演示方式,形象生动地讲解编程基础知识,同时授课教师将根据不同学生的掌握的熟练程度,提高学生解决问题的能力。要让同学们打好编程基础,底子牢才能筑高楼。教师通过现场的巡视指导,及时对学生进行评价,形成了课上与课后、教师与学生、过程与结果多元的评价体系,教师了解学生学习情况并及时调整教学进度。课后:师生交流群随时进行互动、答疑,巩固学习效果。教师通过交流群发布作业及拓展项目要求,学生有选择的进行拓展项目的学习,并收集相关资料、应用案例上传至交流互动版块进行资源共享。教学流程学生活动教师活动学生活动教师活动课前查看任务清单明确学习任务制作任务清单下发任务清单课前查看任务清单明确学习任务制作任务清单下发任务清单自主预习效果检查自主预习效果检查综合点评情境创设综合点评情境创设任务分析课堂巡回指导任务分析课堂巡回指导分组讨论理论教授分组讨论理论教授教师示范学生实战教师示范学生实战在线答疑解惑完成拓展作业在线答疑解惑完成拓展作业课后课后收集相关资料收集相关资料整理应用案例教学平台上传教学过程实施教学环节教学内容教师活动学生活动运用方法时长课前1.制作任务清单2.根据具体项目实施要求将全班同学分成5个学习小组3.学生查看任务清单,明确学习目标及学习任务,讨论并确定学生的职责和任务。1.通过学习交流群发布任务清单。2.摸清学情,对学生进行分组教学1.对照任务清单,明确学习目标及任务,进行预习新课。2.学生发现预习问题,准备课堂交流提问。信息化手段30分钟课中1.函数的定义与调用1.函数的语法结构2.函数的调用3.函数的返回值1.掌握函数的基本语法结构及其注意事项示范教学、讲授法2.函数的参数1.形式参数和实际参数2.参数的传递3.可变长度参数1.理解选择结构的两种形式。2.利用单分支和双分支实现小案例讲授法、示范教学、学生自主练习3.变量作用域1.掌握局部变量2.掌握全局变量3.掌握变量作用域的特点1.能够分析函数中变量的作用域讲授法、示范教学、学生自主练习4.匿名函数与递归函数1.匿名函数的使用2.函数的递归调用1.理解函数体中函数的匿名函数和递归函数讲授法、示范教学、学生自主练习综合评价效果检测1.发布随堂测试题目2.综合评价学生得分3.总结改进1.完成随堂测试2.自评、互评2.总结信息化手段课后项目拓展提升能力1.下达拓展任务清单。2.课后辅导答疑3.制作下次任务清单1.完成拓展项目2.与教师互动、上传案例3.自主预习信息化手段教学反思教学效果能够编写简单的函数。能够分析具有函数的代码。能够根据实际问题写出函数代码。特色创新改进措施通过学生互动活动,有利于学生自主学习与合作交流。一能加深对识别法的认识,有助对教学内容的巩固;二利用这一互动活动,及时反馈信息,有利于教师调整教学策略,优化教学方法,提高教学质量。还需要进行更加充分的备课,将相关知识点准备充分,讲解才能更加自信流畅。活页式知识要点整理一、函数的定义与调用在实际开发中,很多操作时完全相同或者是非常相似的,仅仅是要处理的数据不同而已,因此经常会在不同的代码位置多次执行相似或完全相同的代码块。解决问题的一种常用方法是设计和编写函数,另一种是面向对象程序设计中的类。在编写函数时,以下原则需要参考和遵守:(1)不要在同一个函数中执行太多的功能,尽量只让函数完成一个高度相关且大小合适的功能,以提高模块的内聚性。(2)尽量减少不同函数之间的隐式耦合,使得函数之间仅通过调用和参数传递来显式体现其相互关系。定义函数的语法如下:def函数名([形式参数列表]):'''注释'''函数体定义函数时需要注意:(1)函数形参不需要声明其类型,也不需要指定函数返回值类型。(2)即使该函数不需要接收任何参数,也必须保留一对空的圆括号。(3)括号后面的冒号必不可少。(4)函数体相对于def关键字必须保持一定的空格缩进。(5)允许嵌套定义函数。函数定义时,圆括号内是形式参数列表:(1)一个函数可以没有形式参数,但是定义时一对圆括号必须有,表示这是一个函数并且不接收任何形式参数。(2)在定义函数时,对参数个数没有限制,如果有多个形参,则需要使用逗号进行分隔。函数调用时,向形式参数(书中简称为形参)传递实在参数(书中简称为实参),根据不同的参数类型,将实参的值或引用传递给形参。函数的形参实函数的输入参数,函数的返回值是函数的输出参数,函数体中的return语句是向主调函数传递返回值的语句。return语句具有以下特点:(1)return语句用来从一个函数中返回并结束函数的执行。(2)通过return语句从函数中返回一个任意类型的值。(3)不论return语句出现在函数的什么位置,一旦得到执行将直接结束函数的执行。(4)函数没有return语句或者执行了不返回任何值的return语句。一般情况下,实参单向传递给形参,在函数内部直接修改形参的值不会影响实参。特殊情况:在有些情况下,可以通过特殊的方式在函数内部修改实参的值。利用函数的参数传递可以为列表增加元素。利用函数参数传递还可以修改字典元素或为字典增加元素。二、函数的参数知识点:(1)使用函数时,经常用到形式参数和实际参数,都称为参数。(2)函数参数分为普通参数、默认值参数、关键参数、可变长度参数等。(3)函数的定义非常灵活,在定义函数时不需要指定参数的类型,形参的类型完全由调用者传递的实参类型来决定(4)不需要指定函数的返回值类型,这将由函数中的return语句来决定。(5)如果函数中没有return语句或者没有执行到return语句而返回或者执行了不带任何值的return语句,则函数都默认为返回空值None。默认值参数:(1)默认值参数的特点:定义函数时为形参设置默认值。(2)带有默认值参数的函数的定义语法:def函数名(…,形参名=默认值):函数体(3)默认值参数的位置在定义带有默认值参数的函数时,默认值参数必须出现在函数形参列表的最右端,且任何一个默认值参数右边都不能再出现非默认值参数。关键参数:关键参数的特点:(1)关键参数主要指调用函数时的参数传递方式,而与函数定义无关。(2)可以按照参数名字传递值,实参顺序可以和形参顺序不一致,但不影响参数值的传递结果。可变长度参数:可变长度参数在定义函数时主要有两种形式:(1)*parameter,用来接收任意多个实参并将其放在一个元组中。(2)**parameter,用来接收显式赋值形式的多个实参并将其放入字典中。序列解包:为含有多个变量的函数传递参数时,可以使用列表、元组、字典、集合等可迭代对象作为实参,并在实参名称前加一个星号,解释器将自动进行解包,然后传递给多个单变量形参。如果使用字典对象作为实参,则默认使用字典的“键”。如果需要将字典的“值”作为参数,则需要调用字典的values()方法。如果需要将字典的“键”作为参数,则可以调用字典的keys()方法。三、变量作用域变量作用域具有以下特点:(1)变量起作用的代码范围称为变量的作用域。(2)不同作用域内同名变量之间互不影响。(3)一个变量在函数内部定义和在函数外部定义,作用域是不同的。(4)函数内部定义的变量一般为局部变量。(5)不属于任何函数的变量一般为全局变量。局部变量:defdemo():str1='我爱学python!'print('局部变量str1=',str1)demo()print('局部变量str1=',str1)全局变量:str1='我爱学python!'defdemo():str1='我非常喜欢学python!'print('函数内访问str1=',str1)demo()print('函数外访问str1=',str1)四、匿名函数与递归函数匿名函数指没有名字的函数,函数体的语句可以用表达式表示,表达式的值就是函数返回值,如此函数便可使用更简单的匿名函数。在调用一个函数的过程中又出现直接或间接调用该函数本身,这种调用现象称为函数的递归调用。直接递归调用是指函数体内直接调用本身,间接递归调用是指一个函数调用另一个函数,而这个被调函数又反过来调用先前的调用函数。匿名函数:计算圆的面积函数:普通写法:importmathdefget_circle_area(r):result=math.pi*r*rreturnresultr=10print('半径',r,'的圆的面积为:',get_circle_area(r))使用lambda表达式修改后:importmathr=10result=lambdar:math.pi*r*rprint('半径',r,'的圆的面积为:',result(r))递归函数:importmathdefFab(n):ifn==1orn==2:return1returnFab(n-1)+Fab(n-2)foriinrange(1,11):print(Fab

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论