|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
class Fibs:
def __init__(self,n=20):
self.a = 0
self.b = 1
self.n = n
def __iter__(self):
return self
def __next__(self):
self.a,self.b = self.b,self.a+self.b
if self.a > self.n:
raise StopIteration ----------------------------->请问:这一句只是抛出一个异常,怎么会终止无限循环?为什么?谢谢解答!!!
return self.a
---------------------------------------------------
>>> for each in fibs:
print(each)
1
1
2
3
5
8
13
694061755 发表于 2017-11-26 10:36
谢谢回答,你的意思是:raise StopIteration 是抛出一个异常的同时并退出程序?
是,因为你并没有处理这个异常
|
|