2022年 11月 13日

python map函数 怎么自定义map函数再自己调用一下

**

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