修复 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 中错误 Address Already in Use
发布时间:2023/07/09 浏览次数:173 分类:Python
-
我们将通过示例介绍Python中何时出现 Address already in use 错误以及如何解决。Python 中的错误Address already in use 本文将讲述运行使用端口的程序时发生的Python堆栈错误。
Python 中错误 ValueError: Math Domain Error
发布时间:2023/07/09 浏览次数:607 分类:Python
-
在本篇文章中,我们的目标是探索解决 Python 中的 ValueError: math domain error 错误的不同方法。当编码方面数学(基础或高级)的使用存在固有缺陷时,Python 中通常会引发 ValueError: math domain error 错
Python 错误 Name xrange Is Not Defined
发布时间:2023/07/09 浏览次数:153 分类:Python
-
本篇文章将介绍如何解决 Python 中 name 'xrange' is not defined 的错误。解决Python中name 'xrange' is not defined错误 让我们尝试理解为什么会发生这个特定的错误。 让我们首先尝试复制这个问题。
Python 错误 TypeError: List Indices Must Be Integers, Not STR
发布时间:2023/07/09 浏览次数:954 分类:Python
-
在本篇文章中,我们的目标是探索如何避免 TypeError: list indices must be integers or slices, not str。TypeError主要发生在Python中,每当操作的数据类型出现问题时。
Python 中错误 AttributeError: __Enter__
发布时间:2023/07/09 浏览次数:2241 分类:Python
-
在 Python 中,AttributeError 是在未定义 __enter__ 函数的情况下通过 with 语句使用类的对象时导致的错误。
Python 错误 ModuleNotFoundError: No Module Named '_Ctypes'
发布时间:2023/07/09 浏览次数:686 分类:Python
-
本篇文章旨在了解如何解决 Python 中的 ModuleNotFoundError: No module named '_ctypes'。了解Python中 ModuleNotFoundError: No module named '_ctypes' 根本原因
Python 错误 AttributeError: '_io.TextIOWrapper' Object Has No Attribute 'Split'
发布时间:2023/07/09 浏览次数:1063 分类:Python
-
本篇文章将介绍如何修复 Python 中的 AttributeError: '_io.TextIOWrapper' object has no attribute 'split'。在 _io.TextIOWrapper 上使用 split() 方法会返回 AttributeError
Python 错误 AttributeError: _csv.reader Object Has No Attribute Next
发布时间:2023/07/09 浏览次数:286 分类:Python
-
本篇文章将介绍如何修复 Python 中的 AttributeError: '_csv.reader' object has no attribute 'next'。修复 Python 中的 AttributeError: '_csv.reader' object has no attribute 'next' 错误
Python 错误 Error: Invalid Command Bdist_wheel
发布时间:2023/07/09 浏览次数:847 分类:Python
-
在 Python 中构建 wheel 时,有时 setup.py 可能会退出并出现错误 invalid command 'bdist_wheel'。 本篇文章将讨论在 Python 中解决此问题的可能解决方案。安装wheel包来修复Python中 Error:invalid command 'bdist_