python:map

接口

  • 输入参数:第一个为函数对象,第二个为可迭代对象(比如list,tuple等)。
  • 返回参数:map对象。可通过list(map_object)转化为易处理的list。
  • 其实等价于用for循环去迭代计算f,但用map会更简洁直观
Docstring:
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.

实例1
使用场景:快速多次计算一个数学函数,返回list 。
注:1.也可用for循环,但不简洁直观;2.也可用numpy,输入为array类型,即可实现一次计算出多个函数值。但需要额外导入numpy模块。

In [22]: list(map(lambda x: x**2, [1,2,3]))
Out[22]: [1, 4, 9]

In [23]: list(map(lambda x,y:x+y, [1,2,3],[1,2,3]))
Out[23]: [2, 4, 6]

实例2
使用场景:将list所有数字转化为str

In [3]: a = [1,2,3,4,5]

In [4]: [str(i) for i in a]
Out[4]: ['1', '2', '3', '4', '5']

In [5]: list(map(str, a))
Out[5]: ['1', '2', '3', '4', '5']

你可能感兴趣的:(python)