class Collatz(object):
def __init__(self,n):
self.value=n
def __iter__(self):
return self
def __next__(self):
if self.value == 1:
raise StopIteration
elif self.value % 2 ==0:
self.value =self.value/2
else:
self.value=3*self.value +1
return self.value
for i in Collatz(7):
print(i)
注意:next的方法要前后都加上__
博客提示在使用next方法时,要在其前后都加上双下划线,这是信息技术编程方面的关键信息。
761

被折叠的 条评论
为什么被折叠?



