Python—函数
函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。
函数能提高应用的模块性,和代码的重复利用率。
whyfail
编程界崇尚以简洁优雅为美,很多时候,如果你觉得一个概念很复杂,那么很可能是你理解错了!
展开
-
Python之LEGB规则
Local–Enclosed–Global–Builtin经过这些顺序查找,如果还没有找到,就会报错Local 指的就是函数或者类的方法内部Enclosed 指的是嵌套函数(一个函数包裹另一个函数,闭包)Global 指的是模块中的全局变量Builtin 指的是python为自己保留的特殊名称# 测试LEGBstr = "global str"def outer(): ...原创 2019-10-28 21:41:12 · 332 阅读 · 0 评论 -
Python之nonlocal关键字
nonlocal 用来声明外层的局部变量global 用来声明全局变量【操作】使用nonlocal声明外部局部变量#测试nonlocal和global关键字x = 100def outer(): a = 10 def inner(): nonlocal a #声明外部函数的局部变量 print("inner",a) ...原创 2019-10-28 21:31:30 · 446 阅读 · 0 评论 -
Python之嵌套函数
嵌套函数(内部函数)嵌套函数:在函数内部定义的函数!# 测试嵌套函数def a1(): print("a1 running") def a2(): print("a2 running") a2()a1()》》》a1 runninga2 running什么情况下使用:1、封装-数据隐藏:外部无法访问“嵌套函数”。2、避免重复代...原创 2019-10-28 21:22:24 · 126 阅读 · 0 评论 -
Python之递归函数
递归函数自己调用自己的函数,在函数体内直接或者间接的自己调用自己。def test01(): print("test01") test01()test01()>>>栈内存占满,报错 # 测试递归函数基本原理def test01(n): print("test01",n) if n == 0: print("...原创 2019-10-28 21:01:50 · 82 阅读 · 0 评论 -
Python之eval函数
功能:将字符串str当成有效的表达式来求值并返回计算结果。语法:eval(source[,globals[,locals]]) --> value参数:source:一个python表达式或函数compile()返回的代码对象globals:可选。必须是dictionarylocals:可选。任意映射对象# 测试eval()函数eval("print('wulei')"...原创 2019-10-28 20:08:58 · 77 阅读 · 0 评论 -
Python之匿名函数
lambda表达式可以用来声明匿名函数。lambda函数是一个简单的、在同一行中定义函数的方法。lambda函数实际生成了一个函数对象。lambda表达式基本语法:lambda arg1,arg2… : <表达式>lambda表达式只允许包含一个表达式,不能包含复杂语句,该表达式的计算解惑就是函数的返回值。# 测试lambda表达式、匿名函数a = lambda x,y...原创 2019-10-28 19:55:10 · 151 阅读 · 0 评论 -
Python之参数类型
参数类型位置参数函数调用时,实参默认调用按位置顺序传递,需要个数和形参匹配。默认值参数为某些参数设置默认值,这样,这些参数在传递时就是可选的。默认值参数放在位置参数后面。命名参数按照形参的名称传递参数,称为“命名参数”。# 测试参数的类型:位置参数,默认值参数,命名参数def test01(a, b, c, d): print("{0}-{1}-{2}-{3}".for...原创 2019-10-28 17:03:29 · 103 阅读 · 1 评论 -
Python之拷贝
可以使用内置函数:copy(浅拷贝)、deepcopy(深拷贝)浅拷贝:不拷贝对象的内容,只拷贝子对象的引用。深拷贝:会连子对象的内存也全部拷贝了一份,对子对象的修改不会影响源对象。# 测试浅拷贝、深拷贝import copydef testCopy(): """测试浅拷贝""" a = [1, 2, 3, [4, 5]] b = copy.copy(a)...原创 2019-10-28 16:23:32 · 164 阅读 · 0 评论 -
Python之参数传递
参数的传递参数传递本质就是:从实参到形参的赋值操作分两种:可变对象:字典、列表、集合、自定义的对象等不可变对象有:数字、字符串、元组、function等传递可变对象的引用实际传递的还是对象的引用。在函数体中不创建新的对象拷贝,而是可以直接修改所传递的对象。# 参数的传递# 传递可变对象a = [10,20]print(a)print("###################...原创 2019-10-28 16:01:29 · 69 阅读 · 0 评论 -
Python之变量作用域
变量的作用域(全局变量和局部变量)变量起作用的范围称为变量的作用域,不同作用域内同名变量之间相互不影响。全局变量尽量少的定义全局变量;函数内要改变全局变量的值,使用global()声明;全局变量一般作常量使用;作用域为定义的模块,从定义位置开始直到模块结束。局部变量在函数体内声明的变量;局部变量的引用比全局变量快,优先考虑使用;如果全局和局部变量同名,则在函数内隐藏全局变量,只...原创 2019-10-27 20:33:06 · 377 阅读 · 0 评论 -
Python之return返回值
返回值return返回值要点:如果函数体有return语句,则结束函数执行并返回值;如果函数体不包含return语句,则返回None值;return的作用:返回值结束函数的执行#测试返回值的基本用法def add (a,b): print("计算两个数的和:{0},{1},{2}".format(a,b,(a+b))) return a+b print("...原创 2019-10-27 19:45:44 · 801 阅读 · 0 评论 -
Python之函数简介
函数的基本概念 function1.一个程序有一个个任务组成;函数就是代表一个任务或者一个功能。2.函数是代码复用的通用机制。python函数的分类1.内置函数str()、list()等,可直接使用2.标准库函数通过import语句导入库3.第三方函数下载安装库,通过import导入4.用户自定义函数函数的定义和调用核心要点python中,定义函数的语法:def 函数名...原创 2019-10-27 19:08:57 · 139 阅读 · 0 评论