【发布时间】:2018-04-10 06:09:34
【问题描述】:
我想知道 python 2 和 python 3 中的 zip() 函数有什么区别。我注意到在这两个函数上使用timeit 模块时,python 3 函数要快得多。提前非常感谢:)
【问题讨论】:
-
一件事是在Python3中,它返回一个generator。
-
Python 2 的
zip构建并返回一个列表。 Python 3 的zip返回一个惰性迭代器。如果您实际上对它们进行了迭代,Python 3 将节省内存但具有相同的效果。但是如果你从不尝试使用这些值,Python 3 会更聪明,而且永远不会生成它们,这当然快得惊人,但没那么有用。