【发布时间】:2018-09-16 10:04:04
【问题描述】:
我的处境很奇怪。我知道我可以像以前那样使用方法类作为生成器。 在另一个问题Can a method within a class be generator? 中,有人要求同样的事情,他们说是的,可以做到。
但是,我在尝试时遇到错误。这是一个最小的例子:
class SomeClass(object):
def first_ten(self):
for i in range(10):
yield i
a = SomeClass();
next(a.first_ten)
'method'对象不是迭代器
为什么?这怎么可能? 谢谢 编辑:固定代码缩进
【问题讨论】:
-
为什么投反对票?我的问题到底有什么问题?
-
线索在“'method'对象不是迭代器”...你需要调用方法...
it = a.first_ten()然后使用例如next(it)...或者for n in a.first_ten(): print(a)等..
标签: python python-3.x generator