【TimLinux]パイソン__hash__月ハッシュセット

ルール:

__hash__整数を返す必要があり、ハッシュ関数は、ハッシュのベースタイプを算出します()

缶ハッシュセット:セット()、forzenset()、dictの()の動作は、3つのデータ構造のキー値が一意に唯一の方法のハッシュ値を決定が必要です。

キー値がハッシュするカスタム・オブジェクト・クラスを作成するために必要に応じてカスタムクラスが存在することができます。

__hash__関数がハッシュセット内のオブジェクトの位置を決定するために、整数値を返す(浴槽の多くと比較したハッシュセット、__ hash__は、浴槽の位置を返します)

複数のオブジェクト(バケットを入力するために、同じオブジェクトに)同じ__hash__値オブジェクトの前に、新たなオブジェクトを置換することができない場合__eq__関数(__eq__、交換、等しくない__ eq__範囲を使用することができます)交換してください。

 

ルール:

唯一の定義:__ eq__は、デフォルトのPython __hash__がNoneに設定されています

eq__ __、そしてあなただけNoneに設定することを定義したい場合は、カテゴリは、変数、__ hash__です:のみ定義

定義された:__ __ EQ、__ hash__、クラスは不変でなければなりません。

__eq__等しい、__ hash__は、等しくなければなりません

__hash__が等しい、__ eq__が変化してもよい(以降前に交換)

 

おすすめ

転載: www.cnblogs.com/timlinux/p/11833579.html