迭代器

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了迭代器相关的知识,希望对你有一定的参考价值。

##迭代器

In [24]: ci = collections.Co

collections.Container  collections.Counter    


In [24]: ci = collections.Counter(‘1112312312sdfsdf‘)


In [25]: ci

Out[25]: Counter({‘1‘: 5, ‘2‘: 3, ‘d‘: 2, ‘f‘: 2, ‘s‘: 2, ‘3‘: 2})


In [26]: ci.elements()

Out[26]: <itertools.chain at 0x7f8fd4f1b590>


In [27]: c2 = ci.elements()


In [28]: c2.next()

Out[28]: ‘d‘

##类里必须有__iter__

内部实现:内部实现有没有下一个


##生成器

基于yield生成


In [54]: range(10)

Out[54]: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]


In [55]: xrange(10)

Out[55]: xrange(10)

应用:

In [58]: listOne = [1,2,31,4,32]


In [59]: for i in range(len(list))

list     listOne  


In [59]: for i in range(len(listOne)):

   ....:     print lis

list     listOne  

   ....:     print listOne[i]

   ....:     

1

2

31

4

32


以上是关于迭代器的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段6——CSS选择器

行历史查看器 - Git

持久片段和查看器

损坏的顶点和片段着色器

python使用上下文对代码片段进行计时,非装饰器

设计模式迭代器模式 ( 简介 | 适用场景 | 优缺点 | 代码示例 )