Python內建函式 map函式

2021-10-05 23:14:45 字數 2463 閱讀 5981

map()會根據提供的函式對指定序列做對映。

​ 第乙個引數function以引數序列中的每乙個元素呼叫 function 函式,返回包含每次 function 函式返回值的新列表。

map

(function, iterable,..

.)

引數說明

function:函式

iterable:乙個或多個序列/可迭代物件

原始碼內容

class

map(

object):

""" map(func, *iterables) --> map object

make an iterator that computes the function using arguments from

each of the iterables. stops when the shortest iterable is exhausted.

"""def__getattribute__

(self,

*args,

**kwargs)

:# real signature unknown

""" return getattr(self, name). """

pass

def__init__

(self, func,

*iterables)

:# real signature unknown; restored from __doc__

pass

def__iter__

(self,

*args,

**kwargs)

:# real signature unknown

""" implement iter(self). """

pass

@staticmethod

# known case of __new__

def__new__

(*args,

**kwargs)

:# real signature unknown

""" create and return a new object. see help(type) for accurate signature. """

pass

def__next__

(self,

*args,

**kwargs)

:# real signature unknown

""" implement next(self). """

pass

def__reduce__

(self,

*args,

**kwargs)

:# real signature unknown

""" return state information for pickling. """

pass

# 1.計算列表裡所有元素的平方

defsquare

(x):

return x**

2ret01 =

map(square,[1

,2,3

])print

(ret01)

# ;py3.x返回迭代器

for i in ret01:

print

(i)'''14

9'''

# 2.lambda函式實現以上功能

ret02 =

map(

lambda x:x**2,

[1,2

,3])

lst02 =

[i for i in ret02]

# 通過列表推導式

print

(lst02)

# [1, 4, 9]

# 3.引數中多個迭代器的情況

ret03 =

map(

lambda x,y:x+y,[1

,2,3

],[2

,3,4

])lst03 =

[item for item in ret03]

print

(lst03)

# [3, 5, 7]

# 3.多個迭代器中元素個數不同時

# 會從左到右,以最短為準,取完為止

ret04 =

map(

lambda x,y:x+y,[2

,3,4

],[2

,3,4

,5])

lst04 =

[item for item in ret04]

print

(lst04)

# [4, 6, 8]

Python內建函式 map 函式

目錄 python內建函式 map 函式 語法 描述 例子map function,iterable,引數function 是乙個函式 引數iterable 是乙個或多個序列,不一定是list,只要是可迭代物件就可以。map 函式,它接收乙個函式和乙個 也可以說多個 list 不用非得是list,只...

python 內建函式map

map 函式 map 是 python 內建的高階函式,它接收乙個函式 f 和乙個 list,並通過把函式 f 依次作用在 list 的每個元素上,得到乙個新的 list 並返回。下圖可以說明 對應下面的 def f x return x x print map f,1,2,3,4,5,6,7,8,...

python 內建函式map

map 函式 map 是 python 內建的高階函式,它接收乙個函式 f 和乙個 list,並通過把函式 f 依次作用在 list 的每個元素上,得到乙個新的 list 並返回。下圖可以說明 對應下面的 def f x return x x print map f,1,2,3,4,5,6,7,8,...