Python 的 itertools 库是一个瑰宝——你可以用它提供的函数来组合各种问题的优雅解决方案。在 more-itertools 中,我们收集了额外的构建块、食谱和例程,用于处理 Python 可迭代对象。
要开始,请使用 pip 安装库:
pip install more-itertools来自 itertools 文档 的食谱包含在顶级包中:
>>> from more_itertools import flatten
>>> iterable = [(0, 1), (2, 3)]
>>> list(flatten(iterable))
[0, 1, 2, 3]还有一些新食谱可供使用:
>>> from more_itertools import chunked
>>> iterable = [0, 1, 2, 3, 4, 5, 6, 7, 8]
>>> list(chunked(iterable, 3))
[[0, 1, 2], [3, 4, 5], [6, 7, 8]]
>>> from more_itertools import spy
>>> iterable = (x * x for x in range(1, 6))
>>> head, iterable = spy(iterable, n=3)
>>> list(head)
[1, 4, 9]
>>> list(iterable)
[1, 4, 9, 16, 25]有关函数列表的完整信息,请参阅 API 文档。
关于 more-itertools 的博客文章:
more-itertools 由 @erikrose 和 @bbayles 维护,并得到 许多其他人的帮助。如果您有任何问题或建议,请在此存储库中提交 bug 或 pull request。感谢您的贡献!
版本历史可以在 文档 中找到。