5

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

"No Module Named hashlib"

通过使用以下代码:


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

我会很感激任何帮助,

谢谢,盖伊多尔

4

5 回答 5

6

你可能有一个 < 2.5 的 python 版本。请改用该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'

对比

>>> import hashlib
>>> hashlib.sha1('hello').digest()
'\xaa\xf4\xc6\x1d\xdc\xc5\xe8\xa2\xda\xbe\xde\x0f;H,\xd9\xae\xa9CM'
于 2011-07-02T15:07:25.507 回答
1

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

import md5

m = md5.new()
...
于 2013-03-06T18:00:44.430 回答
0

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

于 2011-07-02T15:06:27.593 回答
0

在诸如 Jython 之类的一些 python 衍生产品上,使用以下命令:

import _hashlib
h =  _hashlib()
md5Res = h.openssl_md5("helloYou").hexdigest()
print(md5Res)
于 2013-07-03T11:35:31.897 回答
0

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

Just below given statement before the import statements to give the path of "hashlib.py file".


import sys

sys.path.append('C:\Python34\Lib')

It has resolved my problem.

于 2016-11-07T14:21:00.107 回答