1.重新定义加密错误示例:

 原代码:

 1 from hashlib import sha1
 2 
 3 
 4 def get_hash(str, salt=None):
 5     """获取一个字符串的hash值"""
 6     str = '!@#$%^&' + str + '!@#$%^&'
 7     if salt:
 8         str = str + salt
 9     sh = sha1()
10     sh.update(str)  # 更新加密
11     return sh.hexdigest()

修改后的代码是在Python3中是要编码的:

from hashlib import sha1


def get_hash(str, salt=None):
    """获取一个字符串的hash值"""
    str = '!@#$%^&' + str + '!@#$%^&'
    if salt:
        str = str + salt
    sh = sha1()
    sh.update(str.encode("utf8"))  # 更新加密
    return sh.hexdigest()

2.错误示例: