欢迎来到@一夜看尽长安花 博客,您的点赞和收藏是我持续发文的动力
对于文章中出现的任何错误请大家批评指出,一定及时修改。有任何想要讨论的问题可联系我:3329759426@qq.com 。发布文章的风格因专栏而异,均自成体系,不足之处请大家指正。
专栏:
文章概述:对Python函数式编程之高阶函数的介绍
关键词:Python函数式编程之高阶函数
本文目录:
Python函数式编程之高阶函数
把函数作为参数传入或把函数作为返回输出,这样的函数称为高阶函数,函数式编程就是指这种高度抽象的编程范式。
面向函数编程,说白了就是把函数传来传去,函数是第一要素;
面向对象编程,说白了就是把对象传来传去,对象是第一要素;
def mytest(num):
return num*2
mytest(10)
myseq = [123, 45.67, -6.2e8]
mytest(myseq)
函数作为参数传递进来
myseq = [123, 45.67, -6.2e8]
def convert(func, seq):
print('转换序列中的数值,要她们统一为一样的数值类型')
return [func(eachNum) for eachNum in seq]
convert(int, myseq)
convert(float, myseq)
convert(str, myseq)
convert(mytest, myseq)
函数作为返回输出
def add_two_nums(x, y):
return x + y
def add_three_nums(x, y, z):
return x + y + z
def get_appropriate_function(num_len):
if num_len == 3:
return add_three_nums
else:
return add_two_nums
args = [1, 2, 3]
num_len = len(args)
res_function = get_appropriate_function(num_len)
print(res_function)
print(res_function(*args))