在Python中,我如何检查一个对象是否是生成器对象?
尝试一下。
给出错误
我知道我可以检查对象是否具有
尝试一下。
>>> type(myobject, generator)
给出错误
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'generator' is not defined
我知道我可以检查对象是否具有
__next__
方法来判断它是否为生成器,但我想找到一种方法来确定任何对象的类型,而不仅仅是生成器。
from types import GeneratorType;type(myobject, GeneratorType)
可以正确地返回类'generator'的对象。但正如Daenyth所暗示的,这并不一定是正确的方法。 - JAB__next__
,那么你实际上是接受任何迭代器,而不仅仅是生成器——这很可能是你想要的。 - user395760isinstance(myobject, GeneratorType)
。 - JAB