作者:CSN | 来源:互联网 | 2023-05-18 08:16
在实验楼上学习python3的课程,在迭代器一节,怎么输出都不正确,错误提示为:Traceback(mostrecentcalllast):File"<pyshell#4
在实验楼上学习python3的课程,在迭代器一节,怎么输出都不正确,错误提示为:
Traceback (most recent call last):
File "", line 1, in
next(c)
TypeError: Counter object is not an iterator 、
代码段如下:class Counter(object): def __init__(self, low, high): self.current = low self.high = high def __iter__(self): return self def __next__(self): '返回下一个值直到当前值大于 high' if self.current > self.high: raise StopIteration else: self.current += 1 return self.current - 1
最后经过调试发现需要将next函数的定义替换为:
def next(self):
即可正确运行。
一个大坑啊!