关于python3.6的md5加密遇到的问题(TypeError: Unicode-objects must be encoded before hashing)

from hashlib import sha1
def register_handle(request):
#密码加密
s1=sha1()
s1.update(upwd)
upwd3=s1.hexdigest()
#注册成功,转到登录页面
return redirect(’/user/login/’)
在进行密码md5加密的时候出现以下错误:
TypeError: Unicode-objects must be encoded before hashing

在这里插入图片描述
错误原因:update()必须指定要加密的字符串的字符编码
解决方法:
from hashlib import sha1
def register_handle(request):
#密码加密
s1=sha1()
s1.update(upwd.encode(“utf8”)) # 指定编码格式,否则会报错
upwd3=s1.hexdigest()
#注册成功,转到登录页面
return redirect(’/user/login/’)

你可能感兴趣的:(关于python3.6的md5加密遇到的问题(TypeError: Unicode-objects must be encoded before hashing))