python中的map函式
阿新 • • 發佈:2019-02-04
首先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 )