编写迭代器出现错误

littlely_ll 2016-12-12 04:10:21
我按照书本上照抄的程序,但是出现了错误,求大神解答。

class Fibs:
def __init__(self):
self.a = 0
self.b = 1
def next(self):
self.a, self.b = self.b, self.a + self.b
return self.a
def __iter_(self):
return self

fibs = Fibs()
for f in fibs:
if f > 1000:
print f
break

但是出现了Traceback (most recent call last):
File "<pyshell#39>", line 1, in <module>
for f in fibs:
TypeError: iteration over non-sequence
这是怎么回事。
...全文
121 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
混沌鳄鱼 2016-12-12
  • 打赏
  • 举报
回复
__iter_ 改成__iter__ 少了一个下划线

37,721

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧