**
1,map函数的基本用法
**
1,map()函数是python的内置函数
2,map() 函数语法:map(function, iterable, …) function:函数 。 iterable: 一个或多个序列
3,第一个参数 function 以参数序列中的每一个元素调用 function 函数,返回包含每次 function 函数返回值的新列表。
4,python3中map()返回的是一个object,因为map()转变成了迭代器来节约空间,返回的是可迭代对象。
5,如果需要list可以直接用list(……)来强制返回一个列表。
6,Map的主要作用就是:并行!并行!并行!map函数和zip函数都是用来进行并行运算,迭代等。
7,map() 的使用方法形如map(f(x),Itera),它有两个参数,第一个参数为某个函数,第二个为可迭代对象。
def f(x):
return x*x
res = map(f, [1, 2, 3, 4, 5, 6, 7])
print(res)
print("map函数返回的对象类型是:", type(res))
print("序列化输出结果为:", list(res))
- 1
- 2
- 3
- 4
- 5
- 6
- 7
运行结果如下:
<map object at 0x000001C989F0D080>
map函数返回的对象类型是: <class 'map'>
序列化输出结果为: [1, 4, 9, 16, 25, 36, 49]
- 1
- 2
- 3
**
2,自定义map()函数
**
list1 = [1, 2, 3, 4, 5, 6, 7, 8]
def func(x):
return x ** 2
def my_map(func1, args):
list2 = []
for i in args:
c = func1(i)
list2.append(c)
print(list2)
my_map(func, list1)
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
运行结果如下:
[1, 4, 9, 16, 25, 36, 49, 64]
- 1