なぜこのエラーが発生するのか全く分かりません。
ベストアンサー1
の 2 つの引数はissubclass()
、オブジェクトのインスタンスではなく、クラスである必要があります。
次のサンプルを検討してください:
>>> issubclass( 1, int )
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: issubclass() arg 1 must be a class
>>> issubclass( type(1), int )
True
>>> isinstance( 1, int )
True
重要なのは、type()
関数を使用して、関数で使用するインスタンスの型を取得することですissubclass()
。これは、別のコメントで述べたように、次の呼び出しと同等です。isinstance()