- 1、本文档共39页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
5.Python函数陈建文华中科技大学电子与信息工程系chenjw@hust.edu.cn2014-04-035.1函数定义5.2函数参数5.3函数文档字符串5.4函数变量作用域5.5lambda函数5.6常用内置函数5.7函数高级主题5.1函数定义函数语法定义函数是一个能完成特定功能的代码块,可在程序中重复使用,减少程序的代码量和提高程序的执行效率。在Python中函数定义语法如下:deffunction_name(arg1,arg2[,...]):statement[returnvalue]函数参数和返回值不是必须的,如果没有return语句,则Python函数默认返回值为None。函数名命名规则函数名必须以下划线或字母开头,可以包含任意字母、数字或下划线的组合。函数名是区分大小写的。函数名不能是保留字或关键字。Python定义函数有三要数:函数名,参数,返回值,函数可以嵌套。Python使用名称空间的概念存储对象,这个名称空间就是对象作用的区域,不同对象存在于不同的作用域。每个模块都有自已的全局作用域;函数定义的对象属局部作用域,只在函数内有效,不会影响全局作用域中的对象;赋值对象属局部作用域,除非使用global,local关键字进行声明。例题5-1:练习创建函数(单一)。例题5-2:练习创建函数(嵌套)。5.2函数参数函数参数分类形式参数:deffunction(arg1,arg2,…)关键字参数:deffunction(arg=value,…)元组参数:deffunction(*arg)字典参数:deffunction(**arg)参数使用规则:关键字参数必须在形式参数之后;在单个函数定义中,只能使用一个tuple参数(*arg)和一个字典参数(**arg);tuple参数必须在连接形式参数和关键字参数之后;字典参数必须在所有其它参数最后定义。函数参数特点在一个函数中对参数名赋值不影响调用者。在一个函数中改变一个可变的对象参数会影响调用者,如列表,字典,数组等。参数是对象指针,无需定义传递的对象类型。函数返回值如果函数有return语句,则返回一个tuple元组,如果给定值,则返回对应元组值,如果没有给定值,则返回空元组。如果函数没有return语句,则函数默认为返回的值是None。总结:函数返回元组值,或者空元组,或者None。例题5-3:练习使用函数参数。(1)形式参数(2)关键字参数(3)元组参数(4)字典参数5.3函数文档字符串在函数定义后紧跟的字符串会被认为是函数的说明文档,也叫docstring(文档字符串),可以使用help(function_name)显示出来。help(add);dir(add);add.__doc__,callable(add),……5.4函数变量作用域查找变量的规则LGB规则:大多数变量引用在三个作用域中查找:先局部(local),次之全局(global),再次之内置(build-in)。如想在局部作用域中改变全局作用域的对象或者变量,必须使用global关键字。global声明把赋值的名字映射到一个包含它的模块的作用域中。函数中的变量作用域在函数对象作用域内,模块中的变量作用域在模块作用域内。局部变量和全局变量在一个函数中定义的变量一般只能在该函数内部使用,这些只能在程序的特定部分使用的变量我们称之为局部变量local。在一个文件或者模块的顶部定义的变量可以供该文件中的任何函数调用,这些可以为整个程序所使用的变量称为全局变量global。如想在局部作用域中改变全局作用域的对象,必须使用global关键字进行标识。globalInt=9#定义一个函数defmyAdd(): localInt=3#在函数中定义一个局部变量 globalgi#在函数中定义一个全部变量 gi=7 return
文档评论(0)