lambda匿名函式可以實現簡單的功能:
sum=lambda x,y:x+y
print(sum(4,2)) #結果為6
def values(a,b,fun):
print(fun(a,b))
values(11,22,lambda x,y:x+y) #結果為33
大資料要用到的三個重要函式:
filter函式: filter()主要用來篩選。輸出filter的時候前邊需要加上星號。
list1=[1,2,3,4,5,6,7,8,9,10]
print(*filter(lambda x:x<6,list1)) #輸出結果 1 2 3 4 5
list2=filter(lambda x:x%2,list1)
for i in list2:
print(i) #輸出結果 1 3 5 7 9
def is_not_empty(s):
return s and len(s.strip()) > 0 #結果為test str end
print(*filter(is_not_empty, ['test', none, '', 'str', ' ', 'end'])) #去除列表中的空格和空字元
map函式:map()傳入兩個引數,乙個是函式乙個是序列。map將函式作用到序列的每個元素並返回新的list列表。
list1=[3,4,5,6,7,8,9,10]
list2=map(lambda x:x+10,list1)
for i in list2:
print(i,end=" ") #結果為13 14 15 16 17 18 19 20
reduce函式:reduce()是對列表,元組中的資料進行累計的函式
from functools import reduce
#需要先導入reduce模組
list1=[1,2,3,4,5,6,7,8,9,10]
print(reduce(lambda x,y:x+y,list1)) #結果為55
Python基礎 匿名函式
當我們在傳入函式時,有些時候,不需要顯式地定義函式,直接傳入匿名函式更方便。在python中,對匿名函式提供了有限支援。還是以map 函式為例,計算f x 的函式外,還可以直接傳入匿名函式 print list map lambda x x x,1,2,3,4,5,6,7,8,9 輸出 1,4,9,...
python基礎 匿名函式
匿名函式的關鍵字為 lambda 冒號前面是形參 冒號後面是返回值 def fun args,kwargs return args,kwargs print fun 1,2,3,4,5 上面三行可以用下面以行代替 print lambda args,kwargs args,kwargs def ad...
python基礎 匿名函式
def 函式名 形參 pass def add x,y x yresult1 add 11,12 print result1的值為 s result1 print 50 匿名函式 執行乙個簡單的表示式 形式 變數 lambda 引數 表示式 匿名函式預設自帶 return func lambda x...