HASH |
Haché |
---|---|
Python |
Syntaxe
hash(objet) |
Paramètres
Nom | Description |
---|---|
objet | Ce paramètre optionnel permet d'indiquer un objet à analyser |
Description
Cette fonction permet de demander la valeur «haché» d'un objet.
Algorithme
MODULE HASH(objet) * Vérifier si l'objet est hachable SI objet est de type immuable (par exemple, int, str, tuple, frozenset) ALORS * Appliquer la fonction de hachage spécifique pour cet objet valeur_de_hachage ← calculer_hachage_pour_objet(objet) * Retourner la valeur de hachage RETOURNE valeur_de_hachage SINON * Si l'objet n'est pas hachable (par exemple, une liste ou un dictionnaire), * lever une exception ou retourner une erreur Lever une exception TypeError FIN SI |
Remarques
- Les valeurs de hachage sont calculées par algorithme de hachage. Les valeurs de hachage sont des entiers. Ils sont utilisés pour comparer rapidement les clefs de dictionnaire lors d'une recherche de dictionnaire. Les valeurs numériques se comparant égales ont la même valeur de hachage (même si elles sont de types différents, comme c'est le cas pour 1 et 1.0). La valeur de hachage -1 est réservée (elle est utilisée pour signaler les erreurs dans la mise en oeuvre C). Pour les entiers ordinaires, la valeur de hachage est simplement l'entier lui-même (sauf s'il s'agit de -1).
- Types hachables : * bool, * int, * long, * float, * string, * unicode, * tuple, et * objet de code.
- Types non hachables : * bytearray, * list, * set, * dictionary et * memoryview.
Dernière mise à jour : Mercredi, le 14 septembre 2016