码迷,mamicode.com
首页 > 其他好文 > 详细

迭代器

时间:2016-02-05 19:32:29      阅读:183      评论:0      收藏:0      [点我收藏+]

标签:python

##迭代器

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


迭代器

标签:python

原文地址:http://tengrommel.blog.51cto.com/608570/1741253

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!