How to check if an object is a generator object in python?

In python, how do I check if an object is a generator object?

Trying this -

>>> type(myobject, generator)

gives the error -

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name "generator" is not defined

(I know I can check if the object has a next method for it to be a generator, but I want some way using which I can determine the type of any object, not just generators.)

Answer rating: 257

You can use GeneratorType from types:

>>> import types
>>> types.GeneratorType
<class "generator">
>>> gen = (i for i in range(10))
>>> isinstance(gen, types.GeneratorType)

Get Solution for free from DataCamp guru