Python'da, bir nesnenin bir jeneratör nesnesi olup olmadığını nasıl kontrol edebilirim?
Bunu deniyorum -
>>> type(myobject, generator)
hata veriyor -
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'generator' is not defined
(Nesnenin next
bir jeneratör olması için bir yöntemi olup olmadığını kontrol edebileceğimi biliyorum , ancak sadece jeneratörleri değil, herhangi bir nesnenin türünü belirleyebileceğim bir yol istiyorum.)
from types import GeneratorType;type(myobject, GeneratorType)
'jeneratör' sınıfı nesneler için doğru sonucu verecektir. Ancak Daenyth'in ifade ettiği gibi, bu mutlaka doğru yol değildir.
__next__
, sadece jeneratörleri değil, herhangi bir yineleyiciyi kabul ediyorsunuz - ki bu muhtemelen istediğiniz şeydir.