当前位置: 移动技术网 > IT编程>脚本编程>Python > python基础入门之十三 —— 高阶函数

python基础入门之十三 —— 高阶函数

2020年03月27日  | 移动技术网IT编程  | 我要评论

杨得志围城打援,中国武装直升机图片,海盗美女

一、定义

把函数作为参数传入

# 示例:求平方
# 法一:一般
def func(x):
    return x**2
print(func(2))  # 4

# 法二:高阶函数
def func1(x,f):
    return f(x)
print(func1(2,func))  # 4

二、内置高阶函数

map(function,list)

传入的函数单独作用到list的每一个变量中

list1 = [1, 2, 5, 9]
def func1(x):
    return x**2
# map(function,list)
result = map(func1, list1)
print(result)  # <map object at 0x000001d4e99e94c0>
print(list(result))  # [1, 4, 25, 81]
reduce(function,list)

function至少有两个传入参数,函数计算结果继续与下一元素做累计运算

 

import functools
list2 = [1,2,3,4]
def func2(a,b):
    return a*b
result2 = functools.reduce(func2,list2)
print(result2)  # 24

 

filter(function,list)

过滤不符合function条件的元素

 

list3 = [1,2,3,4]
def func3(x):
    return x%2==0
result3 = filter(func3,list3)
print(list(result3))  # [2, 4]

 

 

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网