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

Python编程基础与应用 第2版 课件 第4章函数模块与类 .pptx

Python编程基础与应用 第2版 课件 第4章函数模块与类 .pptx

  1. 1、本文档共80页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

1函数、模块与类

4.1函数的定义函数定义规则1)函数代码块以def关键词开头,后接函数标识符名称和圆括号()。2)任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数。3)函数的第一行语句可以选择性地使用文档字符串,用于存放函数说明。4)函数内容以冒号起始,并且统一缩进。2

4.1函数的定义函数定义规则3

4.1函数的定义函数定义规则4

4.1函数的定义5

4.1函数的定义函数的形式参数和实际参数(1)形式参数:在定义函数时,函数名后面括号中的参数就是形式参数,例如:#定义函数时,这里的函数参数obj就是形式参数defdemo(obj):print(obj)6

4.1函数的定义函数的形式参数和实际参数(2)实际参数:在调用函数时,函数名后面括号中的参数称为实际参数,也就是函数的调用者给函数的参数。例如:a=Python学习小组#调用已经定义好的demo函数,此时传入的函数参数a就是实际参数demo(a)7

4.1函数的定义函数的形式参数和实际参数根据实际参数的类型不同,函数参数的传递方式可分为2种,分别为值传递和引用(地址)传递:(1)值传递:适用于实参类型为不可变类型(字符串、数字、元组);(2)引用(地址)传递:适用于实参类型为可变类型(列表,字典)。8

4.1函数的定义函数的形式参数和实际参数9

4.1函数的定义函数的形式参数和实际参数10

4.1函数的定义值传递机制11

4.1函数的定义值传递机制12

4.1函数的定义引用传递机制13

4.1函数的定义引用传递机制14

4.1函数的定义函数的关键字参数15

4.1函数的定义函数的默认值参数16

4.1函数的定义函数的默认值参数17

4.1函数的定义函数的默认值参数18

4.1函数的定义None返回值常量None(N必须大写)。和False不同,它不表示0,也不表示空字符串,而表示“没有值”,也就是空值。这里的空值并不代表空对象,即None和[]、“”不同。None有自己的数据类型,可以在使用type()函数查看它的类型,属于NoneType类型。None常用于assert、判断以及函数无返回值的情况。比如使用print()函数输出数据,其实该函数的返回值就是None。因为它的功能是在屏幕上显示文本,根本不需要返回任何值,所以print()就返回None。对于所有没有return语句的函数定义,Python都会在末尾加上returnNone,使用不带值的return语句(也就是只有return关键字本身),那么就返回None。19

4.1函数的定义None返回值20

4.1函数的定义局部变量在函数内部定义的变量,它的作用域也仅限于函数内部,出了函数就不能使用了,将这样的变量称为局部变量(LocalVariable)。当函数被执行时,Python会为其分配一块临时的存储空间,所有在函数内部定义的变量,都会存储在这块空间中。而在函数执行完毕后,这块临时存储空间随即会被释放并回收,该空间中存储的变量自然也就无法再被使用。21

4.1函数的定义局部变量22

4.1函数的定义全局变量23

4.1函数的定义全局变量24

4.1函数的定义为函数提供说明文档25

4.2函数的高级应用匿名函数lambda表达式26

4.2函数的高级应用匿名函数lambda表达式27

4.2函数的高级应用闭包函数28

4.2函数的高级应用递归函数(1)必须有一个明确的结束条件。(2)每次进入更深一层递归时,问题规模相比上次递归都应有所减少。(3)相邻两次重复之间有紧密的联系,前一次要为后一次做准备(通常前一次的输出就作为后一次的输入)。(4)递归效率不高,递归层次过多会导致栈溢出,因为函数调用是通过栈(stack)这种数据结构实现的,每当进入一个函数调用,栈就会加一层栈帧,每当函数返回,栈就会减一层栈帧。由于栈的大小不是无限的,所以,递归调用的次数过多,会导致栈溢出。29

4.2函数的高级应用递归函数30

4.2函数的高级应用递归函数31

4.2函数的高级应用递归函数32

4.3类与对象对象的引入33

4.3类与对象对象的引入34

4.3类与对象对象的常用术语35

4.3类与对象类的定义36

4.3类与对象类和对象的关系37

4.3类与对象类的构造方法38

4.3类与对象类的构造方法39

4.3类与对象类的构造方法40

4.3类与对象类的构造方法41

4.3类与对象类的构造方法42

4.3类与对象类的构造方法43

4.3类与对

文档评论(0)

xiaobao + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档