1. 程式人生 > >python中的map函式

python中的map函式

首先python 3.5與python2.7在map函式上是有分別的,python 3.5會返回一個object地址,python 2.7會直接返回列表。

map函式接受兩個引數parm1與parm2,其中parm1是function,就是定義的def xxx()或者隱匿函式lambda或是None,parm2是一個列表 ,map最後返回的內容根據python版本而定,但是返回的一定是列表。==》map(parm1,parm2)

示例1:

eg_list = [1,2,3,4,5,6]

def eg_add(eg_num):

eg_num

return en_num

new_eg_list  = map(eg_add, eg_list)

# new_eg_list  = map(str, eg_list)

print (new_eg_list)

示例2:

eg_list = [1,2,3,4,5,6]

new_eg_list  = map(lambda x:x+1, eg_list)

# 如果是python 3.5

for num in new_eg_list:

print(num)

示例3:支援python 2.7

# 如果我們的parm1使用None 那麼map函式就與zip函式一致

eg_list1 = [1,2,3]

eg_list2 = [4,5,6]

new_eg_list = map(None, eg_list1, eg_list2)

# 如果是python 3.5不要使用None,不支援的

print (new_eg_list )