- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Python电子教案5_函数和代码复用(PPT58页);函数是一段具有特定功能的、可重用的语句组,用函数名来表示并通过函数名完成功能调用。函数也可以看作一段具有名字的子程序,可以在需要的地方调用执行,不需要在每个执行地方重复编写这些语句。每次使用函数可以提供不同的参数作为输入,以实现对不同数据的处理;函数执行后,还可以反馈相应的结果。
函数能够完成特定功能,与黑盒类似,对函数的使用不需要了解函数内部实现原理,只要了解函数的输入输出方式即可。严格说,函数是一种功能抽象。;有些函数是用户自己编写的,称为自定义函数;Python安装包也自带了一些函数和方法,包括Python内置的函数(如abs()、eval())、Python标准库中的函数(如math库中的sqrt())等。
;使用函数主要有两个目的:降低编程难度和代码重用。函数是一种功能抽象,利用它可以将一个复杂的大问题分解成一系列简单的小问题,然后将小问题继续划分成更小的问题,当问题细化为足够简单时,就可以分而治之
函数可以在一个程序中多个位置使用,也可以用于多个程序,当需要修改代码时,只需要在函数中修改一次,所有调用位置的功能都更新了,这种代码重用降低了代码行数和代码维护难度。;Python定义一个函数使用def保留字,语法形式如下:
def 函数名(参数列表):
函数体
return 返回值列表
;函数名可以是任何有效的Python标识符;参数列表是调用该函数时传递给它的值,可以有零个、一个或多个,当传递多个参数时各参数由逗号分隔,当没有参数时也要保留圆括号。函数定义中参数列表里面的参数是形式参数,简称为“形参”。函数体是函数每次被调用时执行的代码,由一行或多行语句组成。如果需要返回值,使用保留字return和返回值列表。函数可以没有return语句,在函数体结束位置将控制权返回给调用者。;函数调用和执行的一般形式是:
函数名(参数列表)
此时,参数列表中给出要传进入函数内部的参数,这类参数称为实际参数,简称为“实参”。
;编写程序为Mike和Lily输出生日歌。最简单的实现方法是重复使用print()语??,对Mike的生日歌输出如下:
;其中,第1、2、4行代码相同,假如需要将birthday改为new year,则每处都要修改。为了避免这种情况,可以用函数printHappy()进行封装。
除了Mike,如果再对Lily输出生日歌,除第3行有微小不同外与上述代码一致,这会带来重复代码。如果再有Eric, Adam呢?为了能够复用语句,采用函数方式完成功能,代码如下;;该程序输出效果如下:
;微实例5.1代码中第3行定义了一个函数happyB(),括号中name是形参,用来指代要输入到函数的实际变量,并参与完成函数内部功能。第8和10行两次调用happyB()函数,输入的Mike和Lily是实参,替换name,用于函数执行。;程序调用一个函数需要执行以下四个步骤:
(1)调用程序在调用处暂停执行;
(2)在调用时将实参复制给函数的形参;
(3)执行函数体语句;
(4)函数调用结束给出返回值,程序回到调用前的暂停处继续执行。;对微实例5.1的生日歌程序跟踪分析。第1到7行是函数定义,函数只有在被调用时才执行,因此,前7行代码不直接执行。程序最先执行的语句是第8行的happyB(Mike)。当Python执行到这行时,由于调用了happyB()函数,当前执行暂停,程序用实参Mike替换happyB(name)中的形参name,形参被赋值为实参的值,类似执行了如下语句:
name = Mike;然后,使用实参代替形参执行函数体内容。当函数执行完毕后,重新回到第8行,继续执行余下语句。函数第8行的执行过程如图5.1所示,这里函数happyB()的变量name被自动替换为Mike。
;当程序执行happyB()函数体时,第一条执行语句是happy()函数,这也是一个函数调用。因此,Python暂停执行happyB()函数,将控制传递给被调用的函数happy()。happy()函数体包含了一个简单的print语句,该语句执行后函数体结束,程序重新返回调用happy()函数的位置。图5.2给出了happy()函数调用和返回的执行过程。;函数的调用过程;程序执行完happyB()函数体后,返回调用该函数的原始位置,继续执行,如图5.3所示。
;lambda用于定义一种特殊的函数——匿名函数,又称lambda函数
匿名函数并非没有名字,而是将函数名作为函数结果返回
函数名 = lambda 参数列表: 表达式
lambda函数与正常函数一样,等价于下面形式:
def 函数名(参数列表):
return 表达式;简单说,lambda函数用于定义简单的、能够在一行内表示的函
您可能关注的文档
最近下载
- 部编版五年级语文上册期末测试卷(共五套)【含答案】.pdf VIP
- 《医学检验学》课件.ppt VIP
- 河南省嵩县凡台沟-武松川金矿矿产资源开采与生态修复方案 .pdf VIP
- 初高中物理学习中思维方法比较.ppt VIP
- 上交叉综合征的肌肉失衡及处理ppt课件.pptx VIP
- (新课标)新外研版中职(英语基础模块2)Unit 7 Inventions Make Life Better《Listening and Speaking》说课稿.doc VIP
- 大学生心理健康知到课后答案智慧树章节测试答案2025年春上海交通大学、北京师范大学、清华大学、吉林大学、中国人民大学、北京航空航天大学、北京理工大学、东北大学、南京大学、华中科技大学、中山大学、电子科技大学.docx VIP
- 五年级青春期教育主题班会课.pptx VIP
- 塑料制品厂供配电毕业设计.doc VIP
- 米家米家洗衣机 | 智投洗 滚筒10kg使用说明书.pdf
原创力文档


文档评论(0)