lambda表達式,map函數


lambda只是一個表達式,不需要定義函數,故也是匿名函數,用法為:lambda 參數:表達式。

 

x=5
list1=[2,3,4]
list2=[10,20,30]
s=lambda x:x**3
g=lambda x,y:x+y
print(s(x))
print(g(list1,list2))

 

測試結果:

E:\Anaconda3\python.exe E:/python知識.py
125
[2, 3, 4, 10, 20, 30]

進程已結束,退出代碼 0

map函數,它接收一個函數和若干個序列,返回新的序列,用法為map(function,iterable1,iterable2,...),function為函數表達式,這樣就可以跟lambda表達式完美結合。

list1=[2,3,4]
list2=[10,20,30]

#用lambda表達式
print(map(lambda x,y:x+y,list1,list2))#返回的是map對象,需要用list轉換
print(list(map(lambda x,y:x+y,list1,list2)))#list轉換結果
#定義函數
def func(x,y):
    return x+y
print(list(map(func,list1,list2)))

測試結果:

E:\Anaconda3\python.exe E:/python知識.py
<map object at 0x0000000003E2DCC0>
[12, 23, 34]
[12, 23, 34]

進程已結束,退出代碼 0

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM