Python 函数式编程(1)

Python语言的高级特性

-函数式编程
-基于lambda演算的一种编程方式
-程序中只有函数
-函数可以作为参数也可以作为返回值

-高阶函数
-返回函数
-匿名函数
-装饰器
-偏函数

lambda表达式

-函数:最大程度复用代码
-lambda表达式(匿名函数)
-一个表达式,函数体比较简单
-有参数,用逗号隔开

#lambda表达式的用法
#计算一个数的10倍
#没有return
sum=lambda x:10*x
#使用时和函数是一样的,传入参数就可
print(sum(10))

100

sum2=lambda x,y,z:x+10*y+20*z
print(sum2(3,4,5))

143

高阶函数

-把函数作为参数使用的函数,叫做高阶函数
-函数名称就是一个变量,也可以赋值

#高阶函数举例
#funcA是普通函数
def funcA(n):
    return n*100
#funcB的参数为函数funcA
def funcC(n,f):
    return f(n)*300
print(funcC(10,funcA))

300000

系统高阶函数-map

#对列表里的元素都按照一定的规则进行操作
#返回值是一个迭代对象

a=[1,2,3,4,5,6,7,8,9]
def A(n):
    return n*10
for i in map(A,a):
    print(i,end=' ')

10 20 30 40 50 60 70 80 90

reduce

#把可迭代对象最后归并成一个结果
#必须有两个参数,必须有返回结果
#reduce需要导入functools包

from functools import reduce
#定义一个操作函数
a=[i for i in range(10)]
sum=reduce(add,a)
print(sum)

45

猜你喜欢

转载自blog.csdn.net/qq_41609475/article/details/84870768
今日推荐