something
次のコードを探しているので、isinstance()
後でチェックTrue
がいずれの場合にも評価されます。
i = WonderfulClass()
classinfo_of_i = something(i)
isinstance(i, classinfo_of_i) # must evaluate to True
という回答でしたらtype
、その理由を教えていただければ幸いです。type
の真の対応物isinstance
は? isinstance(i, type(i))
または、逆に、 がFalse と評価されるケースを思いつきますか?
この質問は、リストまたはセットの要素が単一の型であるかどうかを確認する簡単な方法のコンテキストで発生しましたか? ここでは、シーケンスを調べて、すべてのシーケンス要素が同じ種類であるかどうかを確認する必要があります。このコンテキストでは、要素が互いに比較されます。この比較は、に基づいているtype
か、に基づいている可能性がありますisinstance
。
に関する関連文書isinstance(object, classinfo)
:
object 引数が classinfo 引数のインスタンスである場合は true を返します