Python-了解map函数

发布于 2021-02-02 23:18:01

map(function, iterable, ...)

将函数应用于每个iterable并返回结果列表。如果传递了其他可迭代的参数,则函数必须采用那么多参数,并且并行地将其应用于所有可迭代的项目。

如果一个可迭代项短于另一个可迭代项,则假定它扩展为None。

如果functionNone,则假定为身份函数;如果有多个参数,则map()返回一个由元组组成的列表,其中包含所有可迭代对象中的对应项(一种转置操作)。

可迭代参数可以是序列或任何可迭代对象。结果总是一个列表。

这在制作笛卡尔积时起什么作用?

content = map(tuple, array)

将元组放在任何地方会有什么作用?我也注意到,如果没有地图功能的输出abc,并与它,它的a, b, c

我想完全了解此功能。参考定义也很难理解。花哨的绒毛太多。

关注者
0
被浏览
74
1 个回答
  • 面试哥
    面试哥 2021-02-02
    为面试而生,有面试问题,就找面试哥。

    map不是特别pythonic。我建议改用列表推导:

    map(f, iterable)
    

    基本上等同于:

    [f(x) for x in iterable]
    

    map单独不能执行笛卡尔积,因为其输出列表的长度始终与输入列表相同。你可以通过列表理解来简单地做笛卡尔积:

    [(a, b) for a in iterable_a for b in iterable_b]
    

    语法有点混乱-基本上等同于:

    result = []
    for a in iterable_a:
        for b in iterable_b:
            result.append((a, b))
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看