1. # -*- coding: utf-8 -*-
    2. __author__ = 'dongfangyao'
    3. __date__ = '2017/12/18 下午9:47'
    4. __product__ = 'PyCharm'
    5. __filename__ = 'lambda1'
    6. # result = []
    7. # for i in range(8):
    8. # result.append(i**2)
    9. #
    10. # print(result)
    11. print([i**2 for i in range(8)])
    12. print([i for i in range(9) if i% 2==0])
    13. a = [[1, 2, 3], [44, 55, 66], [77, 88, 99]]
    14. print([j for i in a for j in i])
    15. # -*- coding: utf-8 -*-
    16. from functools import reduce
    17. __author__ = 'dongfangyao'
    18. __date__ = '2017/12/18 下午9:54'
    19. __product__ = 'PyCharm'
    20. __filename__ = 'lambda2'
    21. lambda1 = lambda x: x**2
    22. lambda2 = lambda x, y: x+y
    23. lambda3 = lambda x: x % 2 == 0
    24. # python map reduce filter
    25. print(list(map(lambda1, range(8))))
    26. print(reduce(lambda2, range(8)))
    27. print(list(filter(lambda3, range(8))))
    28. # 练习:计算5!+4!+3!+2!+1!的和
    29. # 要求:使用我们刚刚讲的lambda和map reduce filter
    30. # 5!= 5*4*3*2*1
    31. la1 = lambda x, y: x*y
    32. print(reduce(la1, range(1, 6)))
    33. la2 = lambda n: reduce(la1, range(1, n+1))
    34. print(list(map(la2, range(1, 6))))
    35. la3 = lambda a, b: a+b
    36. print(reduce(la3, list(map(la2, range(1, 6)))))