您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Itertools in python

5b51 2022/1/14 8:17:20 python 字数 1718 阅读 340 来源 www.jb51.cc/python

Itertoolsinpython定义Itertools:Functionscreatingiteratorsforefficientlooping(是一系列函数,用来创建迭代器,是为了更有效的循环。迭代器:可以看成是一个for循环的封装。有无限循环和有限循环举个例子://无限循环迭代器cyclecycle('ABCD')-->ABCDABCD..

概述

// 无限循环迭代器cycle
cycle('ABCD') --> A B C D A B C D ...
# 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)) 

总结
所以当结构嵌套多层的时候,可以用这个迭代器的方法高效遍历。

可以继续学习的点:
迭代器结合map,用法更高效。

https://docs.python.org/zh-cn/3/library/itertools.html#itertools.chain

总结

以上是编程之家为你收集整理的Itertools in python全部内容,希望文章能够帮你解决Itertools in python所遇到的程序开发问题。


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶