美文网首页
Python 练习-函数式编程-(02)

Python 练习-函数式编程-(02)

作者: 庭阶 | 来源:发表于2019-01-08 18:10 被阅读0次

1 返回函数

闭包的作用:

https://www.cnblogs.com/JohnABC/p/4076855.html

闭包=函数块+定义函数时的环境,adder就是函数块,x就是环境,当然这个环境可以有很多,不止一个简单的x。


image.png

练习:利用闭包返回一个计数器函数,每次调用它返回递增整数:

def createCounter():
    a=[0]
    def counter():
        a[0]=a[0]+1
        return a[0]
    return counter

counterA=createCounter()
print(counterA(),counterA(),counterA(),counterA())

运行结果:

image.png

2 匿名函数

规则:只能有一个表达式,不用谢return,返回值就是该表达式的结果。
匿名函数好处:函数没名字,不用担心函数名冲突。
匿名函数也是一个函数对象,也可以把匿名函数赋值给一个变量,再利用变量调用该函数。


image.png

练习:

请用匿名函数改造下面的代码:


def is_odd(n):
    return n % 2 == 1

L = list(filter(is_odd, range(1, 20)))

改造后:

L = list(filter(lambda x:x%2==1, range(1, 20)))
print(L)

3 装饰器

4 偏函数

image.png

相关文章

网友评论

      本文标题:Python 练习-函数式编程-(02)

      本文链接:https://www.haomeiwen.com/subject/ajdurqtx.html