sum(map(len, ["a", "aa", "aaa"])) 给我一个 map 而不是一个数字。
我预计这会给出与 sum(len(thing) for thing in ["a", "aa", "aaa"]) 相同的结果(即 6)。
我看到 list(sum(map(len, ["a", "aa", "aaa"]))) 返回给我 [1, 2, 3],就好像 sum 没有效果一样。
我认为这种行为是有原因的。有这方面的预期用例吗?
请您参考如下方法:
我似乎在使用 ipython 并且内置的 sum 函数被“模块 numpy.core.fromnumeric 中的函数 sum”掩盖了(根据 帮助(求和))。我怀疑发出命令 %pylab 的效果。
__builtin__.sum(map(len, ["a", "aa", "aaa"])) 给出预期的 6。
