Hash-Salz für einzelne Anrufe einstellen

Diese Frage hat hier schon eine Antwort:

  • Deaktivieren Sie Hash-Randomisierung aus Python-Programm 1 Antwort

Ich bin auf der Suche nach einem Weg, um Python's hash() Salz für einzelne Anrufe auf die Funktion gesetzt. In den docs habe ich nur PYTHONHASHSEED gefunden, die das Salz für alle Anrufe auf hash() . Allerdings brauche ich hash , um mir immer das gleiche Ergebnis zu bekommen, wenn es von bestimmten Objekten aufgerufen wird, aber ich möchte nicht die gesamte Anwendung zwingen, das gleiche (vorhersagbare) Salz zu verwenden.

  • Hashing ein unveränderliches Wörterbuch in Python
  • Python - Klasse __hash__ Methode und Set
  • Overriding Python's Hashing-Funktion auf Wörterbuch
  • Python Minidom und UTF-8 codierte XML mit Hash-Referenzen
  • Wo finde ich Quelle oder Algorithmus von Pythons Hash () -Funktion?
  • Python Wörterbuch: TypeError: unhashable type: 'list'

  • Kontext: In python2 ich hash , um Schlüsselwert-Objektpaare in indizierte Eimer zu sortieren. Eimer werden beharrlich gespeichert. Dies wird umgekehrt, um den Wert zu holen. Im Grunde, für jedes Paar, das ich tue

     class PDict(object): def __init__(self, bucket_count, bucket_store_path): self._path, self.bucket_count = \ self._fetch_or_store_metadata(bucket_store_path, bucket_count) def __setitem__(self, key, value): bucket_index = (hash(key)&0xffffffff) % self.bucket_count self.buckets[bucket_index][key] = value self._store_bucket(bucket_index) def __getitem__(self, key): bucket_index = (hash(key)&0xffffffff) % self.bucket_count return self._fetch_bucket(bucket_index)[key] 

    Dies erfordert hash , um mir immer das gleiche Ergebnis pro Instanz , über Dolmetscher Aufruf.

  • Pip: Umgang mit mehreren Python-Versionen?
  • Pip-Installation fehlschlägt mit "ValueError:" Format 'in __slots__ Konflikte mit Klassenvariable "
  • Wie macht man Pip "Trockenlauf"?
  • Python `no module pip .__ main __;` Fehler beim Versuch, ein Modul zu installieren
  • Gibt es eine Möglichkeit für Pip, nur neue Abhängigkeiten in einer aktualisierten requirements.txt zu installieren
  • Wie benutzt man Pythons Pip, um die gezippten Dateien für ein Paket herunterzuladen und zu halten?
  • One Solution collect form web for “Hash-Salz für einzelne Anrufe einstellen”

     import hashlib def getHash(name): m = hashlib.md5() m.update(name) return m.hexdigest() 
    Python ist die beste Programmiersprache der Welt.