|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- class MyRange:
- def __init__(self, start, end=None, step=1):
- if end is not None:
- self.start = start
- self.end = end
- else:
- self.start = 0
- self.end = start
- self.step = step
- def __iter__(self):
- return self
- def __next__(self):
- while True:
- if self.step > 0:
- if self.start < self.end:
- current = self.start
- self.start += self.step
- return current
- elif self.step < 0:
- if self.start > self.end:
- current = self.start
- self.start += self.step
- return current
- else:
- raise ValueError("MyRange() step argument must not be zero")
- for i in MyRange(10):
- print(i)
复制代码
能实现range的效果 可是执行程序后打印完后 程序一直处于执行状态 无法结束 该如何优化代码呢? |
|