函式一

weixin_48640346發表於2020-10-12

函式引數:
位置引數、關鍵字引數,可變長度引數*args,**kw

def foo(who):
	print('Hello')
foo('World')

預設引數:必須在位置引數後面

def taxMe(cost,rate=0.0825):
    return cost+(cost+rate)
taxMe(100)   
taxMe(100,0.05)

可變長度非關鍵字引數*args(元組)

def func(a,b,*args):
    suma=0
    suma+=a+b
    for i in args:
        suma+=i
    return suma
    
print(func(1,2,3,4,5)) 

可變長度關鍵字引數**kws(字典)

def func(a,b,**kw):
    suma=0
    suma+=a+b
    for v in kw.values():
        suma+=v
    return suma
    
print(func(1,2,c=6,d=7,e=8))

lambda匿名函式:不需要定義函式名,沒有名稱空間

zz = lambda : True
zz()

map函式,將函式作用於序列中的每個元素上,返回序列

list(map(lambda x:x+1,[1,2,3]))
list(map(lambda x:x*2,[1,2,3]))
list(map(lambda x,y:x*y,[1,2,3],[4,5,6]))
list(map(lambda x,y:(x+y,x-y),[1,3,5],[2,4,6]))

filter函式,過濾序列,返回序列中的非零元素組成的序列

list(filter(lambda x:x%2,[2,3,4]))

reduce函式:

from functools import reduce
reduce(lambda x,y:x+y,[1,2,3,4,5])

相關文章