修复 python 中 AttributeError: 'generator' Object Has No Attribute 'next'
属性是与对象或类相关的值。 当您调用该方法不支持其类型的对象的属性时,Python 中会引发 AttributeError。
例如,对 int 对象使用 split()
方法会返回 AttributeError,因为 int 对象不支持 split()
方法。
在 Python 3 中,迭代器没有附加 .next 方法。 因此,当您尝试在生成器对象上使用 .next 方法时,您将收到 AttributeError 。
本篇文章将介绍修复 Python 中的 AttributeError: 'generator' object has no attribute 'next'。
修复 Python 中的 AttributeError: 'generator' object has no attribute 'next' 错误
以下是在 Python 3 中使用 Yield 语句时出现 AttributeError 的示例。
def get_data(n):
for i in range(n):
yield i
a = get_data(20)
for i in range(10):
print(a.next())
输出:
Traceback (most recent call last):
File "c:\Users\rhntm\myscript.py", line 6, in <module>
print(a.next())
AttributeError: 'generator' object has no attribute 'next'
正如您所看到的,第 6 行中有一个 AttributeError,其中包含代码 print(seq.next())
。 这是因为我们使用了 .next
方法从迭代器中获取下一项。
Python 3 中的 .next
方法被内置函数 next()
取代。您可以使用 next 函数修复此错误,如下所示。
def get_data(n):
for i in range(n):
yield i
a = get_data(20)
for i in range(10):
print(next(a))
输出:
0
1
2
3
4
5
6
7
8
9
在 Python 2 中,您可以使用 .next 方法,但 Python 3 会抛出异常 AttributeError。
现在您知道如何解决 Python 中的 AttributeError: 'generator' object has no attribute 'next' 错误。 我们希望此解决方案对您有所帮助。
相关文章
Python 中错误 File<Stdin>, Line 1, in <Module>
发布时间:2023/07/05 浏览次数:134 分类:Python
-
在本文中,我们将讨论人们面临的最常见的语法错误,即文件“”,第 1 行, 错误。 让我们看看为什么会出现这个错误以及如何在 Python 中解决它。Python 错误 File<Stdin>, Line 1, in <Module&
Python 中错误 AttributeError: Module Enum Has No Attribute Intflag
发布时间:2023/07/05 浏览次数:65 分类:Python
-
本篇文章将介绍修复 Python 中的 AttributeError: module 'enum' has no attribute 'IntFlag'。卸载 enum34 包以修复 Python 中的 AttributeError: module 'enum' has no attribute 'IntFlag' 错误
python 中解决 Graphviz Executables Are Not Found 错误
发布时间:2023/07/04 浏览次数:87 分类:Python
-
本文介绍了如何解决运行 Python 脚本时未找到 Graphviz 可执行文件的错误。安装Graphviz解决Python中 Graphviz executables are not found 错误
解决 Python中的 Reduce Is Not Defined 问题
发布时间:2023/07/04 浏览次数:161 分类:Python
-
本文将讨论如何解决 Python 代码中的“reduce 未定义”错误。python 中使用functools解决NameError: name 'reduce' is not Defined
python 中解决 Raise JSONDecodeError(Expecting Value, S, err.value) From None
发布时间:2023/07/04 浏览次数:52 分类:Python
-
在 json 库中,有一个方法,loads(),它返回 JSONDecodeError 错误。 在本文中,我们将讨论如何解决此类错误并进行适当的处理。从 Python 中使用 try 的 None 中解决 raise JSONDecodeError("Expecting value", s,
解决 Python中 Attempted Relative Import With No Known Parent Package 错误
发布时间:2023/07/04 浏览次数:134 分类:Python
-
对导入系统的充分了解足以防止此类错误,包括 ImportError: attemptsrelative import with noknownparent package。 通过错误消息可以轻松排除问题的根源。
Python 错误 TypeError: Unsupported Operand Type(s) for +: 'NoneType' and 'Int'
发布时间:2023/07/04 浏览次数:115 分类:Python
-
在 Python 中,当您将整数值与空值相加时,会出现 TypeError: unsupported operand type(s) for +: 'NoneType' and 'int' 。 我们将在本文中讨论 Python 错误以及如何解决它。
Python 中错误 ModuleNotFoundError: No Module Named Openpyxl
发布时间:2023/07/04 浏览次数:80 分类:Python
-
本文将讨论 Python 的 No module named 'openpyxl' 错误。 当我们导入的模块未安装或位于另一个目录中时,会出现 ModuleNotFoundError。
Python 错误 Error: Bash: Syntax Error Near Unexpected Token '('
发布时间:2023/07/04 浏览次数:147 分类:Python
-
本篇文章将讨论错误:Bash: syntax error near unexpected token '('。Python 错误:Bash: syntax error near unexpected token '('您的计算机上需要安装 Python,解释器才能查找并运行 Python 文件。