路飞学诚-python集训-第二章

  • 作用域

什么是作用于,一个函数就是一个作用域!


就好比上一章中提到的蛮王画的圈子,就是一个作用域。

  • 匿名函数

lambda 就是我们匿名函数的关键字

匿名函数其实就是没有函数名的函数。

def func(x,y):
    return x+y

func1= lambda x,y:x+y #声明一个匿名函数。
print(func(4,5))
print(func1(4,5))

看代码,就不上图了,执行结果是

9

9

匿名函数一般和其他函数搭配使用

map()函数有两个参数,第一个参数是一个函数。第二个参数是一个序列。

作用就是把序列中每一个元素传到前面的函数中执行一遍,然后再输出一个序列。

看代码:

res = map(lambda x:x*x,[1,2,3,4,5,6])
for i in res:
    print(i)

因为map中的函数只在map中使用,不需要有名字被调用,所以匿名函数最合适。

  • 高阶函数

我们知道普通的函数,是可以传进一个变量作为参数,加以处理,并返回一个值,

那高阶函数是什么呢?高在哪里呢?

既然普通函数是以变量为参数传递,我们是高阶,当然就不能传变量啦,我们传递的是函数

也就是说,如果一个函数,他的参数是另一个函数,那么我们就称它为高阶函数。

同理,如果一个函数返回值是另一个函数(而非函数的值)那么我们也称他为高阶函数

def add(x,y,f):
    return f(x) + f(y)
 
 
res = add(3,-6,abs)
print(res)

输出结果:9

看一下代码,函数add有三个参数,x,y,f,

在调用函数add的时候我们看到传进去三个参数分别为(3,-6,abs)

其中abs为python内置函数。用于计算绝对值。我们稍后会讲。

也就是说add函数的参数中有另一个函数。所以add()就是高阶函数。




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值