Itertools in python
- 定义
- Itertools:Functions creating iterators for efficient looping(是一系列函数,用来创建迭代器,是为了更有效的循环。
- 迭代器:可以看成是一个for循环的封装。有无限循环和有限循环
举个例子:
// 无限循环迭代器cycle
cycle('ABCD') --> A B C D A B C D ...
- 对于Itertool functions,它是用来创建和返回一个迭代器。
# itertools.chain(*iterables) 创建一个迭代器
def chain(*iterables):
# chain('ABC', 'DEF') --> A B C D E F
for it in iterables:
for element in it:
yield element
# classmethod chain.from_iterable(iterable) 类似chain()
def from_iterable(iterables):
# chain.from_iterable(['ABC', 'DEF']) --> A B C D E F
for it in iterables:
for element in it:
# yield 相当于return, 只是它返回的是一种iterator
yield element
# output: [{'a': 0}, {'b': 1}, {'c': 2}, {'d': 3}]
ite = itertools.chain.from_iterable(
[
[{'a':0}, {'b':1}],
[{'c':2}],
[{'d':3}]
]
)
print(list(ite))
参考文献
https://docs.python.org/zh-cn/3/library/itertools.html#itertools.chain
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。