これは演算子系の関数を呼び出した時に「戻り値」として使用されます。
簡単に NotImplemented を見る方法として、dict の __lt__() があります。
>>> ret = dict().__lt__(dict()) >>> ret NotImplemented >>> type(ret) <class 'NotImplementedType'>こちらで述べたように、dict は < 演算子に対応していません。対応していないのですが、dict.__lt__() という関数自体は存在しています。< 演算子から dict.__lt__() が呼び出され、戻り値としてビルトイン定数 NotImplemented(型は NotImplementedType)を返しているということになります。
では、ビルトイン定数 NotImplemented を返すことで、一体どのようなメリットがあるのでしょうか? 次回以降見ていきます。
0 件のコメント:
コメントを投稿