# 定义一个生成器类
class MyGenerator:
def __init__(self, start, end):
self.current = start
self.end = end
def __iter__(self):
return self
def __next__(self):
if self.current < self.end:
self.current += 1
return self.current - 1
else:
raise StopIteration
# 定义一个类,其 __iter__ 方法返回 MyGenerator 的实例
class MyIterable:
def __init__(self, start, end):
self.start = start
self.end = end
def __iter__(self):
# 返回 MyGenerator 的实例
return MyGenerator(self.start, self.end)
# 使用
obj = MyIterable(1, 5)
for num in obj:
print(num)