我有这段代码,但我无法理解为什么会收到此错误:
a= name+pw+salt
TypeError: unsupported operand type(s) for +: '_sre.SRE_Match' and '_sre.SRE_Match'
脚本
class MainHandler(Handler):
def make_salt(self):
return ''.join(random.choice(string.ascii_letters) for x in range(5))
def make_pw_hash(self, name, pw):
salt = self.make_salt()
a= name+pw+salt //problem here
h = hashlib.sha256(a.encode("UTF8")).hexdigest()
return '%s|%s' % (h, salt)
def post(self):
store_hash_and_salt = self.make_pw_hash("José", "somePass")
print (store_hash_and_salt)
答案 0 :(得分:2)
问题是不那里。在某个地方你先传递了RE匹配结果,而不是使用group()
方法从中获取字符串。
(另外,返回字符串的格式不正确,但这不是错误。)