Python 3.x 为什么生成器对象不是返回生成器?
我有一个使用生成器的简单迭代对象。但是Python 3.x 为什么生成器对象不是返回生成器?,python-3.x,Python 3.x,我有一个使用生成器的简单迭代对象。但是Obj()的\uu iter\uuu()方法无法从Generator()获取迭代器 现场演示正在进行中 我希望控制台输出是'qwe'\uuuu init\uuuu无法返回或生成非无值。根据您所拥有的,Generator不是Generator对象,而是Obj是Obj.\uuu iter\uuuu是一种应该产生值的方法,您可能完全可以摆脱生成器类,除非它用于发布的代码段中未显示的其他内容 class Obj(): def __init__(self, w
Obj()
的\uu iter\uuu()
方法无法从Generator()获取迭代器
现场演示正在进行中
我希望控制台输出是'qwe'
\uuuu init\uuuu
无法返回或生成非无
值。根据您所拥有的,Generator
不是Generator对象,而是Obj
是Obj.\uuu iter\uuuu
是一种应该产生值的方法,您可能完全可以摆脱生成器
类,除非它用于发布的代码段中未显示的其他内容
class Obj():
def __init__(self, word):
self.word = word
def __iter__(self):
for l in self.word:yield l
obj = Obj('qwe')
print(obj.__next__())
print(obj.__next__())
print(obj.__next__())
class Obj():
def __init__(self, word):
self.word = word
def __iter__(self):
for l in self.word:yield l
obj = Obj('qwe')
print(obj.__next__())
print(obj.__next__())
print(obj.__next__())