用for遍历迭代器的原理
- 第一步,调用__iter__方法,返回一个迭代器。
- 第二步,调用这个迭代器的__next__方法。
#!/usr/bin/python3
# -*- coding:utf-8 -*-
"""
@Author : heyw
@Contact : he_yuanwen@126.com
@Time : 2020/2/23 9:14
@Software: PyCharm
@FileName: myRange.py
"""
class myRange():
def __init__(self,start=0,end=0):
self.start = start
self.end = end
def __iter__(self):
return self
def __next__(self):
num = self.start
if(num == self.end):
raise StopIteration
else:
self.start += 1
return num
for i in myRange(0, 5):
print(i,end='\t')
0 1 2 3 4