高階函式

淡然。。發表於2024-06-10

reduce #倒序

lists = [2,5,2,4,7]

print(sorted(lists,reverse=True))

filter #過濾序列,過濾掉不符合條件的元系

def get_data(x):

return x%2==0 #查詢1-100的偶數

print(list(filter(get_data,range(1,101))))

reduce對序列中的元素進行案計計算

from functools import reduce

def get_data(x,y):

return x+y #計算1-100的和

print(reduce(get_data,range(1,101)))

map將序列中的每一個元素都傳到函式種執行並返回,可以同時遍歷多個序列,如果序列長短不同,會以段序列為準

map會返回一個選代器,如果要轉換成列表,可以使用list實現

def get_data(x):

return x**3

print(list(map(get_data,[1,2,3])))

reversed #倒序

lists = [1,3,2,5,2]

print(list(reversed(lists)))

lambda匿名函式

get_data = lambda x:x**3

print(list(map(get_data,[1,2,3])))

get_data = lambda x,y:x+y

print(reduce(get_data,range(1,101)))

相關文章