为什么每次在hashlib中调用hexdigest()时都会得到不同的哈希值?

Sey*_*emi 4 python hash

我希望在python中为同一个字符串提供唯一的哈希值.我使用以下代码来获取哈希:

import hashlib
mysha1 = hashlib.sha1()
mysha1.update("my_url")
print mysha1.hexdigest()
mysha1.update("my_url")
print mysha1.hexdigest() # which is generating a different hash
Run Code Online (Sandbox Code Playgroud)

我错过了什么吗?

Mat*_*ell 6

update()函数提供要连接的字符串.

https://docs.python.org/2/library/hashlib.html

>>> import hashlib
>>> mysha1 = hashlib.sha1()
>>> mysha1.update("my_url")
>>> print mysha1.hexdigest()
ebde90b9f0c047ff9f86bec3b71afe5d00594030
>>> mysha1.update("my_url")
>>> print mysha1.hexdigest()
efa6ba48cedd0da886a553ad0e7c131ec79b452e
>>> 
>>> 
>>> sha = hashlib.sha1()
>>> sha.update("my_urlmy_url")
>>> print sha.hexdigest()
efa6ba48cedd0da886a553ad0e7c131ec79b452e
Run Code Online (Sandbox Code Playgroud)