Maison >développement back-end >Tutoriel Python >hash() est-il intégré à Python ?
La fonction de hachage hash() est-elle intégrée en python ? Permettez-moi de vous présenter les connaissances pertinentes sur les fonctions de hachage :
hash(object)
Si l'objet est un objet hachable, hash( ) La fonction renverra sa valeur de hachage ; si l'objet n'appartient pas à un objet hachable, la fonction hash() lèvera une exception. La valeur de hachage est un entier.
Recommandations associées : "tutoriel vidéo python"
hash('orca_j35') #> 3721949548176702466 hash([1,2]) #> TypeError: unhashable type: 'list
Lors de la recherche d'un dictionnaire, les valeurs de hachage sont utilisées pour comparer rapidement les clés du dictionnaire. Les objets avec la même valeur de hachage sont traités comme la même clé par le dictionnaire.
x = (1,2)y = (1,2) # x和y是具备不同id的对象 x is y #> False z = {x:"orca"} # 只要哈希值相同,便可互换使用 z[y] #> 'orca'
Les valeurs égales (==) ont la même valeur de hachage Même si deux valeurs égales appartiennent à des types différents, leurs valeurs de hachage sont les mêmes, comme 1 et 1.0 :
1 == 1.0 #> True hash(1),hash(1.0) #> (1, 1)
astuces : Deux objets égaux (==) doivent avoir la même valeur de hachage, mais cela n'est pas nécessairement vrai s'ils sont renvoyés.
Remarque :
Pour les objets avec des méthodes __hash__() personnalisées, la fonction hash() tronquera __hash__ en fonction de la largeur de bits du retour de la machine hôte (). valeur.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!