匿名函式lambda
:是指一類無需定義識別符號(函式名)的函式或子程式。
格式:冒號前是引數,可以有多個,用逗號隔開,冒號右邊的為表示式。其實lambda返回值是乙個函式的位址,也就是函式物件。
說明:lambda
函式並不能提高程式效率,只是為了是**更加簡潔。
##單個引數
g =lambda x: x**
2print
(g(2))
#4f1 =
lambda x:
'a'if x ==
1else
'b'print
(f1(2)
)#b##多個引數
total =
lambda x, y, z: x+
2*y+3*z
print
(total(1,
2,3)
)#14
1.作用:根據提供的函式對指定序列做對映。
2.語法:map(function, iterable, ...)
`function` -- 函式
`iterable` -- 乙個或多個序列
items =[1
,2,3
,4,5
,6]def
f(x)
:return x**
2print
(list
(map
(f, items)
))
#[1, 4, 9, 16, 25, 36]
items =[1
,2,3
,4,5
,6]#def f(x):
# return x**2
print
(list
(map
(lambda x:x**
2, items)
))
#提供了兩個列表,對相同位置的列表資料進行相加
map(
lambda x, y: x + y,[1
,3,5
,7,9
],[2
,4,6
,8,10
])#[3, 7, 11, 15, 19]
1.函式語法:
reduce(function, iterable[, initializer])
function -- 函式,有兩個引數
iterable -- 可迭代物件
initializer -- 可選,初始引數
2.描述:reduce()
函式會對引數序列中元素進行累積。
函式將乙個資料集合(鍊錶,元組等)中的所有資料進行下列操作:用傳給 reduce 中的函式 function(有兩個引數)先對集合中的第 1、2 個元素進行操作,得到的結果再與第三個資料用 function 函式運算,最後得到乙個結果。
3.舉例:
from functools import
reduce
items =[1
,2,3
,4,5
]result =
reduce
(lambda x, y: x+y, items)
print
(result)
#15
1.函式語法:
filter
(function, iterable)
function--判斷函式;
iterable--可迭代物件。
2.說明:filter()
函式用於過濾序列,過濾掉不符合條件的元素,返回乙個迭代器物件,如果要轉換為列表,可以使用list()
來轉換。
該接收兩個引數,第乙個為函式,第二個為序列,序列的每個元素作為引數傳遞給函式進行判斷,然後返回true
或false
,最後將返回true
的元素放到新列表中。
result =
filter
(lambda x: x %2==
0,range(21
))print
(list
(result)
)#[0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20]
items =[1
,2,3
,4,'1234'
,'ine'
,'-34.56'
,45.8,-
7]result1 =
filter
(lambda x:1if
isinstance
(x,int
)else
0, items)
print
(list
(result1)
)#[1, 2, 3, 4, -7]
defint_num
(x):
ifisinstance
(x,int):
return
true
else
:return
false
result2 =
list
(filter
(int_num, items)
)print
(result2)
#[1, 2, 3, 4, -7]
python資料分析常用函式
for 目標 in 對像 print 賦值目標 1.for迴圈字串操作 a iplaypython.com for i in a print i 案例中的 i 相當於目標,字串變數a是遍歷 迭代 對像。當執行for迴圈語句時,每一次迭代時,i 都會從遍歷 迭代 對像a中接收乙個新值輸出。結束迴圈後,...
資料分析常用Excel函式
不寫一遍看來我是記不住了 預處理 instance num 可選引數是數值形式,預設全部替換 start num 表示第幾位開始查詢,預設為1。注意返回值為find text在整個字串中的位置而不是從查詢位開始的位置。關聯匹配 lookup lookup value,array lookup 查詢的...
numpy常用函式(資料分析
1.np.asarray array和asarray都可以將結構資料轉化為ndarray,但是主要區別就是當資料來源是ndarray時,array仍然會copy出乙個副本,占用新的記憶體,但asarray不會 2.np.linalg.norm 求兩陣列歐式距離 參考文獻 1 linalg linea...