资源简介 (共36张PPT)浙教版信息技术八年级第12课Python的函数新知导入前面我们学习了利用Python的结构设计程序,解决一些实际问题,那么当遇到很复杂的实际问题时,我们也可以利用Python函数来解决。这节课我们就一块来学习Python函数新知讲解用计算机解决问题,常将一个复杂的大问题分解成一系列简单的小问题。当问题细化到足够简单时,问题解决者就可以为每个小问题编写程序,并通过函数进行封装。当各个小问题都解决了,大问题也就迎刃而解。新知讲解函数是一段具有特定功能、可重复使用的语句块。函数用函数名来表示,并通过函数名进行功能调用。在Python中主要有两类函数:系统内建函数和用户自定义函数。一、函数的概念新知讲解内建函数(又称为内置函数)是指Python解释器内置的函数。Python常用的内建函数如下表所示。函数格式和功能描述input()input([prompt])。从标准输入读取字符串print()print(objects,sep='',end=\n')。可以一次输出多个对象int()int([x])。将数字或字符串转换为整型float()float([x])。将整数和字符串转换为浮点数str()str(object)。返回对象的字符串格式len()len(object)。返回int型整数,表示对象的项目个数新知讲解例如,内建函数len()的应用:>>>st="Python">>>len(st)6>>>lst=["HUAWEI","OPPO","VIVO"]>>>len(st)3新知讲解函数的四种类型根据函数的参数和返回值,函数可以分为四种类型:无参数,无返回值的函数无参数,有返回值的函数有参数,无返回值的函数有参数,有返回值的函数新知讲解无参数,无返回值的函数defprintMenu():print('--------------------------')print('xx涮涮锅点菜系统')print('1.羊肉涮涮锅')print('2.牛肉涮涮锅')print('3.猪肉涮涮锅')print('--------------------------')printMenu()新知讲解无参数,有返回值的函数#获取温度defgetTemperature():#这里是获取温度的一些处理过程#为了简单起见,先模拟返回一个数据return24temperature=getTemperature()print('当前的温度为:',temperature)当前的温度为:24新知讲解有参数,无返回值的函数deftest(num1,num2):result=num1+num2print('计算结果为:%d'%result)新知讲解有参数,有返回值的函数defcalculateNum(num):result=0i=1whilei<=num:result=result+ii+=1returnresultresult=calculateNum(100)print('1~100的累积和为:',result)像数据处理并需要结果的应用,可以使用此类函数。新知讲解二、自定义函数Python提供了许多内建函数,如print()等。但用户也可以根据需要创建函数,由用户创建的函数就叫作自定义函数。新知讲解Python使用保留字def定义一个函数,语法格式如下:1.定义函数def<函数名>([参数列表]):<函数体>[return<返回值>]新知讲解自定义函数一般由函数名、参数和函数体组成。函数名可以是任何有效的Python标识符;参数(可以有零个、一个或多个)称为形式参数,简称为“形参”。当需要返回值时,使用return语句,否则函数可以没有return语句,这样的函数返回None值。新知讲解简单的规则:函数代码块以def关键词开头,后接函数标识符名称和圆括号()。任何传入参数和自变量必须放在圆括号中间。圆括号之间可以用于定义参数。函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。函数内容以冒号起始,并且缩进。return[表达式]结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回None。新知讲解2.调用函数在Python程序中,定义一个函数后,相当于给定了函数的名称,指定了参数和代码块结构。新知讲解当通过调用的方式来执行这个函数时,便是在使用这个函数。参数列表中给出要传入函数内部的数据,这类参数称为实际参数,简称为“实参”。函数的调用和执行,其语法格式如下:<函数名>([参数列表])新知讲解程序调用一个函数需要执行以下四个步骤:(3)执行函数体语句;(1)调用程序在调用处暂停执行;(2)在调用时将实参复制给函数的形参;(4)函数调用结束给出返回值,程序回到调用前的暂停处继续执行。新知讲解例如,定义函数printinfo(),调用该函数后输出姓名和年龄,如图所示。#定义printinfo函数defprintinfo(nane,age):print(“Name:“,name)print(“Age:“,age)#调用printinfo函数printinfo(“miki",50)printinfo(age=50,name=“miki")函数的定义与调用Name:mikiAge:50Name:mikiAge:50>>>运行结果新知讲解带有默认值的参数一定要位于参数列表的最后面。否则程序会报错。新知讲解首先,定义函数printinfo(),两个形参由逗号分隔,函数体是两个输出语句,分别输出姓名和年龄;第二次调用时按形参关键字传入两个实参。然后,调用该函数printinfo()第一次调用时按形参位置传入两个实参新知讲解三、函数应用的程序实例假设某人买了一对小兔子,这对小兔子从第三个月开始,每个月都会生一对小兔子斐波那契数列问题。而所有的小兔子到了第三个月又会每月生一对小兔子。问:第n个月会有多少对兔子?新知讲解斐波那契数列又称黄金分割数列,因数学家斐波那契以“兔子繁殖”为例而引入,故又称为“兔子数列”。1.问题分析根据题意,兔子数量与时间的关系如下表所示。时间(单位:月)1234567……兔子数量与时间的关系11235813……新知讲解除第一个和第二个数据特殊外,其他数据都可通过前两个数据生成fib(1)=1,fib(2)=1fib(3)=fib(1)+fib(2)=2fib(n)=fib(n-1)+fib(n-2)(n>2)…新知讲解2.算法设计通过以上分析,输人数据为月数n,初始数据为fib(1)=1,fib(2)=1,中间数据可通过公式fb(i)=fib(i-1)+fib(i-2)计算得到,输出数据为第n个月的兔子对数fib(n)值。新知讲解其算法用流程图表示,如图所示。新知讲解3.编写程序根据上述算法,为便于输出每个月的兔子对数,首先定义函数fib(),然后输入月数n,最后通过for语句循环调用函数fib()并输出每个月的兔子对数。新知讲解#定义fib函数,n为形参deffib(n):a,b=1,1foriinrange(3,n+1):a,b=b,a+breturnb#输入月数n=int(input('请输入第n个月:'))#调用fib函数,i值为实参foriinrange(1,n+1):print(fib(i),end='')其程序代码如下:新知讲解按“F5”键,输入月数,运行结果如图所示。4.调试运行新知讲解赋值语句“a,b=b,a+b”先进行赋值号右边算式的计算,再把计算结果依次赋给左边变量。这种写法可以实现变量交换,例如:a,b=b,a。日积月累#结果为随堂练习1.写函数,接受n个数字,求这些参数数字的和。课堂小结总结本节课所学内容板书设计一、函数的概念二、自定义函数三、函数应用的程序实例1.写一个函数,判断用户传入的列表长度是否大于2,如果大于2只保留前两个,并将新内容返回给调用者。作业布置谢谢21世纪教育网(www.21cnjy.com)中小学教育资源网站有大把高质量资料?一线教师?一线教研员?欢迎加入21世纪教育网教师合作团队!!月薪过万不是梦!!详情请看:https://www.21cnjy.com/help/help_extract.php中小学教育资源及组卷应用平台浙教版信息技术八年级第12课Python的函数教学设计课题Python的函数单元第三单元学科信息技术年级八年级学习目标知识目标:理解函数的概念,掌握常用内建函数的格式和功能。技能目标:初步掌握函数的定义和调用方法。通过“斐波那契数列问题”的程序实例,能够编写简单使用自定义函数的应用程序。情感目标:培养学生的创造性思维能力、探索精神,让学生体验成功的喜悦;。重点初步掌握函数的定义和调用方法。难点能够编写简单使用自定义函数的应用程序。教学过程教学环节教师活动学生活动设计意图导入新课前面我们学习了利用Python的结构设计程序,解决一些实际问题,那么当遇到很复杂的实际问题时,我们也可以利用Python函数来解决。这节课我们就一块来学习Python函数思考并回答问题激发学生学习兴趣并快速进入学习状态讲授新课用计算机解决问题,常将一个复杂的大问题分解成一系列简单的小问题。当问题细化到足够简单时,问题解决者就可以为每个小问题编写程序,并通过函数进行封装。当各个小问题都解决了,大问题也就迎刃而解。一、函数的概念函数是一段具有特定功能、可重复使用的语句块。函数用函数名来表示,并通过函数名进行功能调用。在Python中主要有两类函数:系统内建函数和用户自定义函数。内建函数(又称为内置函数)是指Python解释器内置的函数。Python常用的内建函数如下表所示。例如,内建函数len()的应用:>>>st="Python">>>len(st)6>>>lst=["HUAWEI","OPPO","VIVO"]>>>len(st)3函数的四种类型根据函数的参数和返回值,函数可以分为四种类型:无参数,无返回值的函数无参数,有返回值的函数有参数,无返回值的函数有参数,有返回值的函数无参数,无返回值的函数defprintMenu():print('--------------------------')print('xx涮涮锅点菜系统')print('1.羊肉涮涮锅')print('2.牛肉涮涮锅')print('3.猪肉涮涮锅')print('--------------------------')printMenu()无参数,有返回值的函数#获取温度defgetTemperature():#这里是获取温度的一些处理过程#为了简单起见,先模拟返回一个数据return24temperature=getTemperature()print('当前的温度为:',temperature)当前的温度为:24有参数,无返回值的函数deftest(num1,num2):result=num1+num2print('计算结果为:%d'%result)有参数,有返回值的函数defcalculateNum(num):result=0i=1whilei<=num:result=result+ii+=1returnresultresult=calculateNum(100)print('1~100的累积和为:',result)像数据处理并需要结果的应用,可以使用此类函数。二、自定义函数Python提供了许多内建函数,如print()等。但用户也可以根据需要创建函数,由用户创建的函数就叫作自定义函数。1.定义函数Python使用保留字def定义一个函数,语法格式如下:def<函数名>([参数列表]):<函数体>[return<返回值>]自定义函数一般由函数名、参数和函数体组成。函数名可以是任何有效的Python标识符;参数(可以有零个、一个或多个)称为形式参数,简称为“形参”。当需要返回值时,使用return语句,否则函数可以没有return语句,这样的函数返回None值。简单的规则:函数代码块以def关键词开头,后接函数标识符名称和圆括号()。任何传入参数和自变量必须放在圆括号中间。圆括号之间可以用于定义参数。函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。函数内容以冒号起始,并且缩进。return[表达式]结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回None。2.调用函数在Python程序中,定义一个函数后,相当于给定了函数的名称,指定了参数和代码块结构。当通过调用的方式来执行这个函数时,便是在使用这个函数。函数的调用和执行,其语法格式如下:<函数名>([参数列表])参数列表中给出要传入函数内部的数据,这类参数称为实际参数,简称为“实参”。程序调用一个函数需要执行以下四个步骤:(1)调用程序在调用处暂停执行;(2)在调用时将实参复制给函数的形参;(3)执行函数体语句;(4)函数调用结束给出返回值,程序回到调用前的暂停处继续执行。例如,定义函数printinfo(),调用该函数后输出姓名和年龄,如图所示。函数的定义与调用#定义printinfo函数defprintinfo(nane,age):print(“Name:“,name)print(“Age:“,age)#调用printinfo函数printinfo(“miki",50)printinfo(age=50,name=“miki")运行结果Name:mikiAge:50Name:mikiAge:50>>>带有默认值的参数一定要位于参数列表的最后面。否则程序会报错。首先,定义函数printinfo(),两个形参由逗号分隔,函数体是两个输出语句,分别输出姓名和年龄;然后,调用该函数printinfo()第一次调用时按形参位置传入两个实参第二次调用时按形参关键字传入两个实参。三、函数应用的程序实例斐波那契数列问题。假设某人买了一对小兔子,这对小兔子从第三个月开始,每个月都会生一对小兔子而所有的小兔子到了第三个月又会每月生一对小兔子。问:第n个月会有多少对兔子?1.问题分析斐波那契数列又称黄金分割数列,因数学家斐波那契以“兔子繁殖”为例而引入,故又称为“兔子数列”根据题意,兔子数量与时间的关系如下表所示。除第一个和第二个数据特殊外,其他数据都可通过前两个数据生成fib(1)=1,fib(2)=1fib(3)=fib(1)+fib(2)=2…fib(n)=fib(n-1)+fib(n-2)(n>2)2.算法设计通过以上分析,输人数据为月数n,初始数据为fib(1)=1,fib(2)=1,中间数据可通过公式fb(i)=fib(i-1)+fib(i-2)计算得到,输出数据为第n个月的兔子对数fib(n)值。其算法用流程图表示,如图所示。3.编写程序根据上述算法,为便于输出每个月的兔子对数,首先定义函数fib(),然后输入月数n,最后通过for语句循环调用函数fib()并输出每个月的兔子对数。其程序代码如下:#定义fib函数,n为形参deffib(n):a,b=1,1foriinrange(3,n+1):a,b=b,a+breturnb#输入月数n=int(input('请输入第n个月:'))#调用fib函数,i值为实参foriinrange(1,n+1):print(fib(i),end='')4.调试运行按“F5”键,输入月数,运行结果如图所示。4.调试运行按“F5”键,输入月数,运行结果如图所示。日积月累赋值语句“a,b=b,a+b”先进行赋值号右边算式的计算,再把计算结果依次赋给左边变量。这种写法可以实现变量交换,例如:a,b=b,a。随堂练习1.写函数,接受n个数字,求这些参数数字的和。defsum_func(args):sm=0foriinargs:sm+mireturnsmprint(sum_func(1,2,3,7,4,5,6))#结果为()通过教师的讲解,以小组合作的方式,开展探讨交流,完成任务。学生小组间讨论,共同完成任务。通过教师的讲解,以小组合作的方式,开展探讨交流,完成任务。通过教师的讲解,以小组合作的方式,开展探讨交流,完成任务。学生小组间讨论,共同完成任务。通过教师的讲解,以小组合作的方式,开展探讨交流,完成任务。学生小组间讨论,共同完成任务。通过教师的讲解,以小组合作的方式,开展探讨交流,完成任务。学生小组间讨论,共同完成任务。学生小组间讨论,共同完成任务。学生小组间讨论,共同完成任务,并分组汇报。通过小组合作,加强学生组内团结、共同完成任务培锻炼学生的语言组织能力和表达的能力。加强学生组内团结、共同完成任务。加强学生组内团结、共同完成任务培锻炼学生的语言组织能力和表达的能力。加强学生组内团结、共同完成任务培锻炼学生的语言组织能力和表达的能力。加强学生组内团结、共同完成任务培锻炼学生的语言组织能力和表达的能力。培锻炼学生的语言组织能力和表达的能力。培养学生独立完成练习的能力。课堂小结分小组总结归纳,教师补充。各组汇报总结,其他小组成员做补充。锻炼学生的总结能力,逻辑思维、语言表达能力。布置作业1.写一个函数,判断用户传入的列表长度是否大于2,如果大于2只保留前两个,并将新内容返回给调用者。板书一、函数的概念二、自定义函数三、函数应用的程序实例21世纪教育网www.21cnjy.com精品试卷·第2页(共2页)HYPERLINK"http://www.21cnjy.com/"21世纪教育网(www.21cnjy.com) 展开更多...... 收起↑ 资源列表 第12课 Python的函数.doc 第12课 Python的函数.pptx