5

辞書とリストの中を調べるために、 contains構文の複数のインスタンスを使用する Python プログラムを作成しました。

if not test_map[var].__contains__(string):

私は使用した方が良いようです:

if string not in test_map[var]:

__contains__メソッドを使用しているときに発生する可能性のある問題を知っている人はいますか?

ありがとう、

4

1 に答える 1

13

とても醜いです。

実際に意図されたトップレベルの構文を使用する代わりに実装を直接使用すると、将来セマンティクスが変更された場合に問題が発生する可能性があります。さらに、コードの理解と説明が非常に難しくなります。

in内部での使用を知らなくても、有能な Python プログラマーになることは十分に可能__contains__()です。私が主張する逆は真実ではありません。

于 2012-10-08T11:39:43.837 に答える