メタプログラミングみたいなことやってると、クラスの判定みたいなことをやりたくなる。
typeとかisinstanceとかは良く見るのですが、class定義なのかどうなのかの判定をしたい場合。
import inspect # class定義かどうか(これが結構出てこない) print(inspect.isclass(mod)) # オブジェクトがclassのインスタンスかどうか print(isinstance(obj, XXX)) print(type(obj) == XXX) # AがBの子classかどうか print(issubclass(XXX,XXX))