Python的hash方法是将原始的数据对象转化为hash值,由于其不可逆性,广泛应用于数据加密(比如很多网站的密码是通过md5加密),如果题主具备数据结构的相关知识,应该知道hash的计算方式有多种,这里简要介绍一下最基本的除数取余。
> 比如说对于两个数11和12,人为的设置一个除数3,那么通过取余操作可以得到11和12的在该条件下的hash值2和0。
以上就是一种简单的hash操作,但是这种简单的除数取余会带来一个问题就是hash碰撞,即两个不同的数据具有相同的hash值,因此,需要更复杂的hash算法来避免这个问题。
除了以上简单的取余操作,现在有很多复杂的hash加密算法,比如md5和sha系列。
在python中可以通过hash()的方式对数据进行hash操作,也可以通过python的hashlib库进行md5和sha hash操作,其相关文档放在最后,可以参考。
python中hash()方法的官方文档Built-in Functions — Python 3.7.14 documentation
python中hash以及hashlib的介绍Python中hash算法_A-L-Kun的博客-CSDN博客_python 哈希
这里有sha1的hash算法加密流程,感兴趣可以自行研究hash 算法计算过程 - zhangyukun - 博客园 (cnblogs.com)