Wie überprüfe ich in Python, ob ein Objekt ein Generatorobjekt ist?
Ich versuche das -
>>> type(myobject, generator)
gibt den Fehler -
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'generator' is not defined
(Ich weiß, ich kann überprüfen, ob das Objekt eine hat next
Methode hat, um ein Generator zu sein, aber ich möchte eine Möglichkeit, mit der ich den Typ eines Objekts bestimmen kann, nicht nur Generatoren.)
from types import GeneratorType;type(myobject, GeneratorType)
gibt Ihnen das richtige Ergebnis für Objekte der Klasse 'generator'. Aber wie Daenyth andeutet, ist das nicht unbedingt der richtige Weg.
__next__
, akzeptieren Sie tatsächlich jeden Iterator, nicht nur Generatoren - was sehr wahrscheinlich das ist, was Sie wollen.