- 1、本文档共51页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PYTHON程序设计
Python程序设计
第6章 Python函数定义与使用
Python程序设计
6.1 函数的理解与定义
6.2 参数传递与返回值
6.3 作用域
6.4 递归
Python程序设计
函数定义
函数调用
函数的理解与定义
函数的理解与定义
函数的定义
求取包含10个斐波那契数
函数的理解与定义
函数的定义
如何让代码按照用户指定的最终要求取得序列的长度?
或许还可以让程序更加抽象
函数的理解与定义
函数的定义
函数是一段具有特定功能的、可重用的语句组,用函数名来
表示并通过函数名进行完成功能调用。
函数是一种功能的抽象,一般函数表达特定功能
两个作用:降低编程难度 和 代码复用
函数的理解与定义
函数的定义
Python定义一个函数使用def保留字,语法形式如下:
def 函数名(参数列表):
函数体
return 返回值列表
函数的理解与定义
函数的定义
def fibs(nums):
fibs = [0, 1]
for i in range(num - 2):
fibs.append(fibs[-2]+fibs[-1])
return fibs
函数名
参数
返回值
函数的理解与定义
函数的定义
给函数编写文档
函数的理解与定义
函数的调用
程序调用一个函数需要执行以下四个步骤:
(1)调用程序在调用处暂停执行;
(2)在调用时将实参复制给函数的形参;
(3)执行函数体语句;
(4)函数调用结束给出返回值,程序回到调用前的暂停处继续执行。
函数的理解与定义
函数的调用
nums = 8
Python程序设计
6.1 函数的理解与定义
6.2 参数传递与返回值
6.3 作用域
6.4 递归
Python程序设计
参数传递
返回值
参数传递与返回值
参数传递与返回值
参数传递
形参与实参
在def语句中,位于函数名后面的变量通常称为形参。
调用函数时提供的值称为实参
参数传递与返回值
参数传递
函数可以有参数,也可以没有,但必须保留括号
参数传递与返回值
参数传递
函数定义时可以为某些参数指定默认值,构成可选参数
参数传递与返回值
参数传递
位置参数 和 关键字参数
在结合使用位置参数和关键字参数时,必须先指定所有位置参数
参数传递与返回值
参数传递
函数定义时可以设计可变数量参数,既不确定参数总数量
参数传递与返回值
参数传递
函数定义时可以设计可变数量参数,既不确定参数总数量
def printParams(*params):
print(params)
def printParams2(**params):
print(params)
参数传递与返回值
返回值
函数可以返回0个或多个结果
return保留字用来传递返回值
函数可以有返回值,也可以没有
可以有return,也可以没有
return可以传递0个返回值,也可以传递任意多个返回值
参数传递与返回值
返回值
Python程序设计
6.1 函数的理解与定义
6.2 参数传递与返回值
6.3 作用域
6.4 递归
作用域
局部变量和全局变量
一个程序中的变量包括两类:全局变量和局部变量。
•全局变量指在函数之外定义的变量,一般没有缩进,在程序执行全过程有效。
•局部变量指在函数内部使用的变量,仅在函数内部有效,当函数退出时变量将不存在。
作用域
局部变量和全局变量
当函数执行完退出后,其内部变量将被释放。
规则1: 局部变量和全局变量是不同变量
作用域
局部变量和全局变量
函数func()内部使用了变量n,并且将变量参数b赋值给变量n
作用域
局部变量和全局变量
如果希望让func()函数将n当作全局变量,需要在变量n使用前显式声明该变量为全局变量,代码如下。
作用域
局部变量和全局变量
规则2: 局部变量为组合数据类型且未创建新变量,等同于全局变量
作用域
局部变量和全局变量
规则2: 局部变量为组合数据类型且未创建新变量,等同于全局变量
作用域
局部变量和全局变量
总结:
基本数据类型,无论是否重名,局部变量与全局变量不同
可以通过global保留字在函数内部声明全局变量
组合数据类型,如果局部变量未真实创建,则是全局变量
lambda
lambda函数
python 使用 lambda 来创建匿名函数,不再使用 def 语句这样标准的形式定义一个函数。
lambda 只是一个表达式,函数体比 def 简单很多。
lambda的主体是一个表达式,而不是一个代码块。仅仅能在lambda表达式中封装有限的逻辑进去。
lambda 函数拥有自己的命名空间,且不能访问自己参数列表之外或全局命名空间里的参数。
lambda
lambda函数
您可能关注的文档
- 青岛版一年级数学第三单元.doc
- 青岛理工大学建筑施工技术期末考试题三套.doc
- 全厂闭路电视监视系统规范书ok发出2017521.doc
- 人教版小学五年级美术下册教案文本版.doc
- 三年级数学下册共案打印2012.doc
- 山西财经大学普通全日制本科学年论文格式201604221.doc
- 陕西师范大学教育技术学743历年真题.doc
- 生物2017年百日百题1.doc
- 施工组织设计公路桥梁.doc
- 数据库实验二20152109申奥运.doc
- 2024年中国钽材市场调查研究报告.docx
- 2024年中国不锈钢清洗车市场调查研究报告.docx
- 2024年中国分类垃圾箱市场调查研究报告.docx
- 2024年中国水气电磁阀市场调查研究报告.docx
- 2024年中国绿藻片市场调查研究报告.docx
- 2010-2023历年初中毕业升学考试(青海西宁卷)数学(带解析).docx
- 2010-2023历年福建厦门高一下学期质量检测地理卷.docx
- 2010-2023历年初中数学单元提优测试卷公式法(带解析).docx
- 2010-2023历年初中毕业升学考试(山东德州卷)化学(带解析).docx
- 2010-2023历年初中毕业升学考试(四川省泸州卷)化学(带解析).docx
文档评论(0)