一、定義
把函式作為引數傳入
# 示例:求平方 # 法一:一般 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]
|
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/164065.html
標籤:Python
上一篇:Python-反射機制
下一篇:第六周 python組合資料型別
