标签:循环 列表 int port log 实现 top import 对象
一,可迭代的
#iterable 可迭代的
#str
#列表
#tuple
#set
#dict
#可迭代的 ——对应的标志 __iter__
# print(‘__iter__‘ in dir([1,2,3])) #判断一个变量是不是一个可迭代的
可迭代的转化成迭代器方法
1 #!/usr/bin/env python 2 #*_*_cod:utf-8_*_ 3 4 #将可迭代的转化成迭代器 5 l = [1,2,3,4,5] 6 for i in l: 7 print(i) 8 print(iter(l)) #内置函数 iter == l._iter_() 9 print(l.__iter__())
二,迭代器
#迭代器 大部分都是在python的内部去使用的,我们直接拿来用就行了
#迭代器:内置__iter__和__next__方法
迭代器实现for循环
1 #!/usr/bin/env python 2 #*_*_cod:utf-8_*_ 3 4 l = [1,2,3,4,5] 5 l_iterator = iter(l) 6 print(l_iterator.__next__()) 7 print(l_iterator.__next__()) 8 print(l_iterator.__next__()) 9 print(l_iterator.__next__()) 10 print(l_iterator.__next__()) 11 next(l_iterator) #==l_iterator.__next__() 12 while True: 自己写相当于for循环 13 try: 14 print(next(l_iterator)) 15 except StopIteration: 16 break
小结:
#!/usr/bin/env python #*_*_cod:utf-8_*_ #迭代器 大部分都是在python的内部去使用的,我们直接拿来用就行了 #迭代器:内置__iter__和__next__方法 from collections import Iterable from collections import Iterator #判断是否是迭代器 和 可迭代对象的简便方法 # s = ‘abc‘ # print(isinstance(s,Iterable)) s 是不是一个可迭代对象 # print(isinstance(s,Iterator)) s 是不是一个迭代对象 # print(isinstance(iter(s),Iterator))
标签:循环 列表 int port log 实现 top import 对象
原文地址:http://www.cnblogs.com/jokerbj/p/7277208.html