Python知识:关于map
生活随笔
收集整理的這篇文章主要介紹了
Python知识:关于map
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1 當作函數
python的map類似于,函數y = f( x )
x= [1,2,3,4]
y = map( lambda x:x**2,l)
print(list(x) )
map()傳入的第一個參數是f,即函數對象本身。由于結果r是一個Iterator,Iterator是惰性序列,因此通過list()函數讓它把整個序列都計算出來并返回一個list。你可能會想,不需要map()函數,寫一個循環,也可以計算出結果。但是,map要比循環更快,更穩健。
2 多元函數
可以實現多個序列構成的函數運算。
例1 基于兩個list的示例
lst = [[1,6,8,9] ,[2,3,8,1]] f = lambda x,y : x+y if (x+y) >=15 else x-y ss = map(f ,lst[0],lst[1]) print( list(ss) )結果:[-1, 3, 16, 8]
例2 基于array的示例
import numpy as np lst = np.array([ [1,2 ],[6,3],[8,8],[9,1] ]) f = lambda x,y : x+y if (x+y) >=15 else x-y ss = map(f ,lst[:,0],lst[:,1]) print( list(ss) )結果:[-1, 3, 16, 8]?
3 批量處理
從文件讀入的數據,是個字符串格式,如何將其轉化成數組格式,map是很有效的方法。請看下例:
stData = '1,22,33,434,545,646,7567' data = map( int, stData.split(',') ) print( list(data) )結果: [ 1, 22, 33, 434, 545, 646, 7567 ]?
總結
以上是生活随笔為你收集整理的Python知识:关于map的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: GraphViz :1 安装和简单使用
- 下一篇: 在Win10下安装python+tens