変数がクラス(インスタンスではない!)であるかどうかをどのように確認すればよいのか疑問に思っていました。
関数を使用しisinstance(object, class_or_type_or_tuple)
てこれを実行しようとしましたが、クラスの型が何であるかわかりません。
例えば次のコードでは
class Foo:
pass
isinstance(Foo, **???**) # i want to make this return True.
「 」を???class
に置き換えようとしましたが、これはPython のキーワードであることに気付きました。class
ベストアンサー1
さらに良いのは、inspect.isclass
関数。
>>> import inspect
>>> class X(object):
... pass
...
>>> inspect.isclass(X)
True
>>> x = X()
>>> isinstance(x, X)
True
>>> inspect.isclass(x)
False