网站大量收购独家精品文档,联系QQ:2885784924

Python程序设计 第7章 函数与模块.pptxVIP

  1. 1、本文档共55页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

;函数概述

函数的定义与调用

函数的参数与返回值

函数的嵌套调用与递归调用

匿名函数

变量的作用域

模块

函数应用举例;函数的分类

函数是一组实现某一特定功能的语句集合,是可以重复调用、功能相对独立完整的程序段。

从用户使用角度分类:

标准库函数(标准函数)

用户自定义函数

从参数传递角度分类:

有参函数

无参函数;函数概述

函数的定义与调用

函数的参数与返回值

函数的嵌套调用与递归调用

匿名函数

变量的作用域

模块

函数应用举例;函数的定义

采用def关键字定义函数,不需要指定返回值的类型;

函数的参数不限,不需要指定参数类型;

参数括号后面的冒号“:”必不可少;;函数的定义

函数体相对于def关键字必须保持一定的空格缩进;

return语句是可选的;

允许定义函数体为空的函数;函数的调用

一般形式:函数名([实参表])

实参可以是常量、变量、表达式、函数等,但在进行函数调用时必须有确定的值。

对于无参函数,调用时实参表列为空,但括号()不能省;7.2函数的定义与调用;函数概述

函数的定义与调用

函数的参数与返回值

函数的嵌套调用与递归调用

匿名函数

变量的作用域

模块

函数应用举例;形式参数(形参)和实际参数(实参)

形式参数:定义函数时函数名后面括号中的变量名

实际参数:调用函数时函数名后面括号中对应的参数

参数的传递方式

值传递

地址传递

;值传递(传值调用)

所谓值传递方式是指在函数调用时,为形参分配存储单元,并将实参的值复制到形参;

函数调用结束,形参所占内存单元被释放,值消失。

值传递的特点:形参和实参各占不同的内存单元,函数中对形参值的改变不会改变实参的值。这就是函数参数的单向传递规则。

;7.3函数的参数及返回值;地址传递(传地址调用)

所谓地址传递方式是指在函数调用时,将实参数据的存储地址作为参数传递给形参。

特点:形参和实参占用同样的内存单元,函数中对形参值的改变也会改变实参的值;7.3函数的参数及返回值;默认值参数:可以为函数的参数提供默认值

函数定义时,形式参数中非默认参数和默认参数可以并存,但非默认参数之前不能有默认参数。

默认参数的值只在定义时被设置计算一次。如果函数修改了对象,默认值就被修改了;默认值参数

可以使用函数__defaults__查看函数所有默认值参数的当前值。

使用__defaults__查看mul函数的默认值参数

对函数的调用有多种方式。;默认值参数

分析两段代码的异同

可变默认参数运行时

会保持状态

不可变默认参数每次

默认调用时为空

;位置参数和关键字参数

位置参数

在函数调用时,实参默认采用按照位置顺序传递给形参的方式

上例中的函数调用中,2,3,4默认按位置依次传递给了x,y,z

;位置参数和关键字参数

关键字参数

在函数调用时,实参采用指定:参数名=实参值的方式进行调用

上例中,通过明确指定参数名和实参值的方式,虽然参数传递位置不同,但函数返回值是相同的;可变长参数

一个函数可能在调用时需要使用比定义时更多的参数,这就需要使用可变长参数。

使用方法是在变量名前加星号*或**;可变长参数;调用函数时不指定可变长参数示例;调用函数时使用不同形式的可变长参数示例;可变长参数与默认参数、位置参数同时使用示例;函数的返回值

指函数被调用、执行完后,返回给主调函数的值。

一般形式:return表达式

return的作用使程序控制从被调用函数返回到调用函数中,同时把返回值带给调用函数

函数内可有多条返回语句。

如果没有return语句,会自动返回NONE;如果有return语句,但是return后面没有表达式也返回NONE。;示例:编写函数,判断一个数是否是素数;示例:求一个数列中的最大值和最小值;函数概述

函数的定义与调用

函数的参数与返回值

函数的嵌套调用与递归调用

匿名函数

变量的作用域

模块

函数应用举例;递归调用

在函数的执行过程中又直接或间接地调用该函数本身,这就是函数的递归调用

在函数中直接调用函数本身称为直接递归调用

在函数中调用其他函数,其他函数又调用原函数,称为间接递归调用;递归调用

递归调用的两个要素:递归终止条件和递归表达式

递归终止条件表示退出递归调用的条件,此条件保证递归函数是可以返回的,而不是无限递归

递归表达式表示在递归调用过程中的一般归纳情况;递归调用示例:求n!

由n!定义可知:

递归终止条件:n=0或1时,返回值为1

递归表达式:f(n)=n*f(n-1);递归调用经典示例:汉诺塔问题

假设有三个塔座,分别用A、B、C表示,在一个塔座(设为A塔)上有64个盘片,盘片大小不等,按大盘在下,小盘在上的顺序叠放着,如图8.5所示。现要借助于B塔,将这些盘片移到C塔去,要求在移动的过程中,每个塔座上的盘片始终

文档评论(0)

半路风景 + 关注
实名认证
文档贡献者

计算机、软件教育工作者,IT行业资深工作经验

1亿VIP精品文档

相关文档