【python教程(三)·函数进阶(下)】教程文章相关的互联网学习教程文章

Python3 函数进阶

闭包函数 什么是闭包函数 闭包函数本质上就是函数嵌套和高阶函数 闭包函数的满足条件:必须嵌套函数 内嵌函数必须引用外部函数的变量 外部函数必须返回内嵌函数的函数对象(函数名)# outer 是一个闭包函数 def outer():x = 1def inner():print(X) # 内嵌函数引用了外部函数里的变量return inner # 外部函数返回内嵌函数的函数对象f1 = outer() f1()闭包函数的作用 闭包函数不仅返回了内嵌函数的函数对象, 还在其身上包裹了一层(外部...

python常用函数进阶(2)之map,filter,reduce,zip

Basic Python : Map, Filter, Reduce, Zip 1-Map() 1.1 Syntax # fun : a function applying to the iterable object # iterable : such as list, tuple, string and other iterable objectmap(fun, *iterable) # * token means that multi iterables is supported 1.2 Working map() applying the given function to each item of the given iterable object. map() returns an iterable object called "map object". 1....

python 函数进阶

形参角度:万能参数:? 动态接收位置参数:*args ? **动态接收关键字参数:**kwargs ****的魔性用法:*函数定义时 ,*代表聚合。他将所有的位置参数 聚合成一个元组,赋值给了args; 函数定义时: **将所有的关键字参数聚合成一个字典中,将这个字典赋给了 kwargs; *和 **在函数的调用时 *代表打散仅限关键字参数: # def func(a,b,*args,sex='男',c,**kwargs): # print(a,b) # func(1,2,3,4,sex='女',c='仅限关键字参数') 形参...

Python函数进阶range,map,filter,reduce,zip,enumerate【代码】

函数定义语法def 函数名([参数名]): ```注释```函数体lambda匿名函数 <函数名>=lambda<参数>:<表达式> >>> sorted(['abc','afe','acb'],key=lambda x:(x[0],x[2])) ['acb', 'abc', 'afe']可以定义有名字的的函数。 lambda 是为了减少单行函数的定义而存在的 range函数 描述 range()可创建一个整数列表,一般在for循环中。 语法 range(stop) range(start,stop[,step]) 参数说明start:计数从start开始。默认从0开始。>>> range(5...

Python_生成器函数进阶_39【代码】

def generator():print(123)content = yield 1print(=======,content)print(456)arg = yield 2print(nihao)yieldg = generator() ret = g.__next__() # 123 print(***,ret) # *** 1 ret = g.send(hello) #send的效果和next一样 但是还会执行下一个yield之前的语句 而next直接就在当前yield停止了 # print(***,ret) g.__next__()

Python全栈之路----函数进阶----作用域的查找空间【代码】

n = 10def func():n = 20print(func:,n)def func2():n = 30print(func2:,n)def func3():print(func3:,n)func3()func2()func()问题:在func3()里打印的n的值是多少? 30 LEGB代表名字查找顺序:locals -> enclosing function -> globals -> _builtins_locals 是函数内的名字空间,包括局部变量和形参 enclosing 是外部嵌套函数的名字空间 globals 全局变量,函数定义所在模块的名字空间 builtins 内置模块的名字空间

python教程(三)·函数进阶(上)

在介绍了函数定义的方法后,再来介绍一些进阶知识参数收集 有时候我们需要参数的数量是任意的,比如print函数的参数的数量是任意的,print函数的内部实现我们不探究,但是单单是参数数量可变这一方面实现起来不难,我们只需像下面这样定义函数: >>> def print_params(*params): ... print(params) ... >>> print_params() () >>> print_params(1) (1,) >>> print_params(1,2) (1, 2) >>> print_params(1,2,3) (1, 2, 3) >>> ...

python教程(三)·函数进阶(下)

下半部分果然很快到来,这次介绍函数的更高级用法,装饰器!函数嵌套 先来说说函数嵌套,python中的函数是可以嵌套的,也就是说可以将一个函数放在另一个函数里面,比如: >>> def outer(name): ... def inner(): ... print(name) ... return inner ... >>> func1 = outer('feather') >>> func2 = outer('Lee') >>> func1() feather >>> func2() Lee >>> 你没看错,我们在函数里面定义了另一个函数,并把这个...