-精选版Python电子教案5-1 函数和代码复用.ppt

-精选版Python电子教案5-1 函数和代码复用.ppt

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

请读者注意,奇迹产生了,全局列表变量在函数func()调用后竟然发生了改变! 列表等组合数据类型由于操作多个数据,所以它们在使用中有创建和引用的分别。当列表变量被方括号([],无论是否为空)赋值时,这个列表才被真实创建,否则只是对之前创建列表的一次引用。 函数对变量的作用 上述代码func()函数的ls.append(b)语句执行时需要一个真实创建过的列表,此时func()函数专属的内存空间中没有已经创建过且名称为ls的列表,因此,func()函数进一步去寻找全局内存空间,自动关联全局ls列表,并修改其内容。当func()函数退出后,全局ls列表中的内容被修改。简单说,对于列表类型,函数可以直接使用全局列表而不需要采用global进行声明。 函数对变量的作用 如果func()函数内部存在一个真实创建过且名称为ls的列表,则func()函数将操作该列表而不会修改全局变量,例子如下。 函数对变量的作用 总结一下,Python函数对变量的作用遵守如下原则: 简单数据类型变量无论是否与全局变量重名,仅在函数内部创建和使用,函数退出后变量被释放,如有全局同名变量,其值不变; 简单数据类型变量在用global保留字声明后,作为全局变量使用,函数退出后该变量保留且值被函数改变; 函数对变量的作用 对于组合数据类型的全局变量,如果在函数内部没有被真实创建同名变量,则函数内部可以直接使用并修改全局变量的值; 如果函数内部真实创建了组合数据类型变量,无论是否有同名全局变量,函数仅对局部变量进行操作,函数退出后局部变量被释放,全局变量值不变。 函数对变量的作用 datetime库的使用 * 使用函数主要有两个目的:降低编程难度和代码重用。函数是一种功能抽象,利用它可以将一个复杂的大问题分解成一系列简单的小问题,然后将小问题继续划分成更小的问题,当问题细化为足够简单时,就可以分而治之 函数可以在一个程序中多个位置使用,也可以用于多个程序,当需要修改代码时,只需要在函数中修改一次,所有调用位置的功能都更新了,这种代码重用降低了代码行数和代码维护难度。 函数的定义 Python定义一个函数使用def保留字,语法形式如下: def 函数名(参数列表): 函数体 return 返回值列表 函数的定义 函数名可以是任何有效的Python标识符;参数列表是调用该函数时传递给它的值,可以有零个、一个或多个,当传递多个参数时各参数由逗号分隔,当没有参数时也要保留圆括号。函数定义中参数列表里面的参数是形式参数,简称为“形参”。函数体是函数每次被调用时执行的代码,由一行或多行语句组成。如果需要返回值,使用保留字return和返回值列表。函数可以没有return语句,在函数体结束位置将控制权返回给调用者。 函数的定义 函数调用和执行的一般形式是: 函数名(参数列表) 此时,参数列表中给出要传进入函数内部的参数,这类参数称为实际参数,简称为“实参”。 函数的定义 编写程序为Mike和Lily输出生日歌。最简单的实现方法是重复使用print()语句,对Mike的生日歌输出如下: 微实例5.1:生日歌 其中,第1、2、4行代码相同,假如需要将birthday改为new year,则每处都要修改。为了避免这种情况,可以用函数printHappy()进行封装。 除了Mike,如果再对Lily输出生日歌,除第3行有微小不同外与上述代码一致,这会带来重复代码。如果再有Eric, Adam呢?为了能够复用语句,采用函数方式完成功能,代码如下 微实例5.1:生日歌 微实例5.1:生日歌 该程序输出效果如下: 微实例5.1:生日歌 微实例5.1代码中第3行定义了一个函数happyB(),括号中name是形参,用来指代要输入到函数的实际变量,并参与完成函数内部功能。第8和10行两次调用happyB()函数,输入的Mike和Lily是实参,替换name,用于函数执行。 微实例5.1:生日歌 程序调用一个函数需要执行以下四个步骤: (1)调用程序在调用处暂停执行; (2)在调用时将实参复制给函数的形参; (3)执行函数体语句; (4)函数调用结束给出返回值,程序回到调用前的暂停处继续执行。 函数的调用过程 对微实例5.1的生日歌程序跟踪分析。第1到7行是函数定义,函数只有在被调用时才执行,因此,前7行代码不直接执行。程序最先执行的语句是第8行的happyB(Mike)。当Python执行到这行时,由于调用了happyB()函数,当前执行暂停,程序用实参Mike替换happyB(name)中的形参name,形参被赋值为实参的值,类似执行了如下语句: name = Mike 函数的调用过程 然后,使用实参代替形参执行函数体内容。当函数执行完毕后,重新回到第8行

文档评论(0)

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

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

1亿VIP精品文档

相关文档