Python 3下MD5加密
# 由于MD5模块在python3中被移除
# 在python3中使用hashlib模块进行md5操作
import hashlib
# 待加密信息
str = 'this is a md5 test.'
# 创建md5对象
hl = hashlib.md5()
# Tips
# 此处必须声明encode
# 若写法为hl.update(str) 报错为: Unicode-objects must be encoded before hashing
hl.update(str.encode(encoding='utf-8'))
print('MD5加密前为 :' + str)
print('MD5加密后为 :' + hl.hexdigest())
运行结果
封装Python3下MD5加密
# 生成MD5
def genearteMD5(str):
# 创建md5对象
hl = hashlib.md5()
# Tips
# 此处必须声明encode
# 否则报错为:hl.update(str) Unicode-objects must be encoded before hashing
hl.update(str.encode(encoding='utf-8'))
print('MD5加密前为 :' + str)
print('MD5加密后为 :' + hl.hexdigest())
Python2版本中带有MD5模块生成MD5 如下
import md5
src = 'this is a md5 test.'
m1 = md5.new()
m1.update(src.encode(encoding='utf-8'))
print(m1.hexdigest())