Python:导入 md5 时出错
Python : error with importing md5
我在导入 md5 库时遇到问题
我只使用下面的代码:
import md5
filemd5 = md5.new(password.strip()).hexdigest()
我也试过这个代码:
from hashlib import md5
filemd5 = md5.new(password.strip()).hexdigest()
还有这段代码:
from md5 import md5
但其中 none 个正在工作!
当我 运行 代码时,它给了我这个错误:
11.py", line 1, in <module>
import md5
ImportError: No module named 'md5'
我该怎么办?
我是不是导入了错误的库?
md5
不是模块,是对象。但是它没有 new
方法。它只是必须构建,就像任何对象一样。
使用如下:
import hashlib
m=hashlib.md5(b"text")
print(m.hexdigest())
b
前缀是 Python 3 所要求的,并且被理解(并且被 python 2.7 忽略)。 python 2 的旧版本不接受它(只需将 "text"
作为字符串传递)
结果:
1cb251ec0d568de6a929b520c4aed8d1
您也可以创建空对象然后更新它(不止一次!)
m=hashlib.md5()
m.update(b"text")
m.update(b"other text")
s = "some more text"
m.update(s.encode())
请注意 Python 3 需要编码的 bytes
对象,而不是 string
,因为 Python 3 区分字符串和二进制数据。 MD5 对二进制和字符串很有用。
我在导入 md5 库时遇到问题 我只使用下面的代码:
import md5
filemd5 = md5.new(password.strip()).hexdigest()
我也试过这个代码:
from hashlib import md5
filemd5 = md5.new(password.strip()).hexdigest()
还有这段代码:
from md5 import md5
但其中 none 个正在工作! 当我 运行 代码时,它给了我这个错误:
11.py", line 1, in <module>
import md5
ImportError: No module named 'md5'
我该怎么办? 我是不是导入了错误的库?
md5
不是模块,是对象。但是它没有 new
方法。它只是必须构建,就像任何对象一样。
使用如下:
import hashlib
m=hashlib.md5(b"text")
print(m.hexdigest())
b
前缀是 Python 3 所要求的,并且被理解(并且被 python 2.7 忽略)。 python 2 的旧版本不接受它(只需将 "text"
作为字符串传递)
结果:
1cb251ec0d568de6a929b520c4aed8d1
您也可以创建空对象然后更新它(不止一次!)
m=hashlib.md5()
m.update(b"text")
m.update(b"other text")
s = "some more text"
m.update(s.encode())
请注意 Python 3 需要编码的 bytes
对象,而不是 string
,因为 Python 3 区分字符串和二进制数据。 MD5 对二进制和字符串很有用。