无法导入“hashlib”

时间:2011-07-02 15:04:20

标签: python encryption hash sha1 hashlib

我正在尝试加密sha1中的字符串,我从服务器收到错误:

"No Module Named hashlib"

使用以下代码:


import hashlib
encrypted = hashlib.sha1(string)
encrypted = encrypted.digest()

我会感激任何帮助,

谢谢, Guy Dor

5 个答案:

答案 0 :(得分:6)

你可能有一个python版本< 2.5。请改用sha模块。

以下是差异:

>>> import sha
>>> s = sha.new()
>>> s.update('hello')
>>> s.digest()
'\xaa\xf4\xc6\x1d\xdc\xc5\xe8\xa2\xda\xbe\xde\x0f;H,\xd9\xae\xa9CM'

VS

>>> import hashlib
>>> hashlib.sha1('hello').digest()
'\xaa\xf4\xc6\x1d\xdc\xc5\xe8\xa2\xda\xbe\xde\x0f;H,\xd9\xae\xa9CM'

答案 1 :(得分:1)

此外,FWIW和其他人在此结束,但对于hashlib.md5():

import md5

m = md5.new()
...

答案 2 :(得分:0)

hashlib是python 2.5 中的新模块/库 服务器肯定运行 python 2.4 或更早

答案 3 :(得分:0)

在某些python衍生产品(如Jython)上,使用以下命令:

import _hashlib
h =  _hashlib()
md5Res = h.openssl_md5("helloYou").hexdigest()
print(md5Res)

答案 4 :(得分:0)

找到与未找到的模块相关的此类错误的最简单方法是验证其路径。我完全能够通过控制台运行python facebook ads api代码但是当我通过c#尝试这个代码时,我得到了几个与路径相关的错误。

在import语句之前的给定语句下面给出" hashlib.py文件"的路径。

导入sys

sys.path.append(' C:\ Python34 \库&#39)

它解决了我的问题。