迭代函数的问题
class squares:def __init__(self,start,stop):
self.value=start-1
self.stop=stop
def __iter__(self):
return self
def next(self):
lf self.value==self.stop:
rasie StopIteration
self.value +=1
return self.value**2
for i in squares(1,5):
print(i)
1,4,9,16,25
这里边的 self.value 为什么要赋值为 start-1 呢?
__iter__这个迭代,是以什么顺序执行的? 问题1:def next(self):计算前会对value+1 ,然后返回结果。不减一会计算就是从start+1计算
问题2:使用内置函数,next(可迭代对象)进行顺序查看 Stubborn 发表于 2021-4-12 10:46
问题1:def next(self):计算前会对value+1 ,然后返回结果。不减一会计算就是从start+1计算
问题2:使用内 ...
谢谢啊
页:
[1]