オブジェクトの同一と同値を判定するには以下のようにする。
>>> a = ('a', 1)
>>> b = ('a', 1)
>>> a == b # 同値性のチェック
True
>>> a is b # 同一性のチェック
False
例外には文字列例外とクラス例外の2つがあるが、発生した例外と、exceptブロックに指定した例外のマッチングは以下のように行われる。
同一性により比較される。
両方がクラスの同じ階層に属するかにより比較される。つまり、発生した例外がexceptブロックに指定した例外と同じクラスのインスタンスかサブクラスのインスタンスであればマッチする。