【发布时间】:2016-02-10 19:02:37
【问题描述】:
当我在命令行执行此操作时(过滤和减少相同)
map( lambda x: x+1, [1,2,3,4,5] )
结果不是列表/集合...我得到了
<map object at 0x6ffffe7b630>
要获得列表,我必须应用 list() 函数 如果我使用普通的旧函数来替换 lambda,也会发生同样的情况......
为什么会有这种行为?
【问题讨论】:
-
强烈反对“重复”标记...我的问题有一个技术方面需要解释...您指出的问题只是说如何使用该方法...
-
没问题,抱歉。
-
对该问题的公认答案是“在 Python 3+ 中,许多迭代可迭代对象的进程本身返回迭代器”。这是技术原因。
标签: python collections lambda