當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python hash()用法及代碼示例


在數字技術的新時代,機器學習,人工智能和網絡安全正在崛起。 Python是實現許多此類優秀語言的一種語言。

Python提供hash() 將數據編碼為無法識別的值的方法。

用法: hash(obj)

參數:
obj:我們需要將其轉換為哈希的對象。

返回:如果可能,返回哈希值。

代碼1:演示hash()的工作

# Python 3 code to demonstrate  
# working of hash() 
  
# initializing objects 
int_val = 4
str_val = 'GeeksforGeeks'
flt_val = 24.56
  
# Printing the hash values. 
# Notice Integer value doesn't change 
# You'l have answer later in article. 
print ("The integer hash value is:" + str(hash(int_val))) 
print ("The string hash value is:" + str(hash(str_val))) 
print ("The float hash value is:" + str(hash(flt_val)))

輸出:

The integer hash value is:4
The string hash value is:-5570917502994512005
The float hash value is:1291272085159665688
hash()的屬性
  • 使用散列的對象hash()是不可逆的,導致信息丟失。
  • hash()僅針對不可變對象返回散列值,因此可以用作檢查可變/不可變對象的指示符。

代碼2:演示hash()的屬性

# Python 3 code to demonstrate  
# property of hash() 
  
# initializing objects 
# tuple are immutable 
tuple_val = (1, 2, 3, 4, 5) 
  
# list are mutable 
list_val = [1, 2, 3, 4, 5] 
  
# Printing the hash values. 
# Notice exception when trying 
# to convert mutable object 
print ("The tuple hash value is:" + str(hash(tuple_val))) 
print ("The list hash value is:" + str(hash(list_val)))

輸出:

The tuple hash value is:8315274433719620810

例外情況:

Traceback (most recent call last):
  File "/home/eb7e39084e3d151114ce5ed3e43babb8.py", line 15, in 
    print ("The list hash value is:" + str(hash(list_val)))
TypeError:unhashable type:'list'


相關用法


注:本文由純淨天空篩選整理自manjeet_04大神的英文原創作品 Python | hash() method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。