EfonMark

一番码客 : 挖掘你关心的亮点。
http://www.efonmark.com

本文目录:

[TOC]

image-20200428233424445

函数名作为变量

这里以内置函数abs()为例,可以把abs函数赋值给另一个变量,然后这个变量就等同于abs函数了。

1
num = abs(-5)
2
print(num) # 输出结果:5
3
4
num = abs
5
print(num) # 输出结果:<built-in function abs>
6
print(num(-5)) # 输出结果:5

image-20200428234249438

由此可见,python中函数名也是变量,可以赋值。

高阶函数

在python里,函数名也是一种变量,类似与C语言里的函数指针。函数有入参为另一个函数, 这样的函数被称为高阶函数 。

这里我们自己构建一个高阶函数plus作为例子。

1
#!/usr/bin/env python
2
def plus(num1, num2, func):
3
    return func(num1) + func(num2)
4
5
print(plus(-3, -4, abs)) # 输出结果:7

这个例子中,num1num2作为普通变量传入函数,而func变量是一个函数。这里将abs()函数作为参数传入。

参考:
- 《物联网Python开发实战》
免费知识星球:一番码客-积累交流
微信公众号:一番码客
微信:Efon-fighting
网站:http://www.efonmark.com

蜀ICP备19039940号

总访问量为