我得到了这个错误,突出显示的代码是 通过[0]
这个错误到底是什么意思?这是一个简单的比较,但由于它是作为元组返回的,所以我无法对其进行比较。我需要把密码改成元组吗?或者我必须用另一种方法来证明它是平等的吗? 这是我的全部代码。这是一个简单的密码检查。在
def check_login(db, useremail, password):
"""returns True if password matches stored"""
cur = db.cursor()
password1 = db.crypt(password)
ur = "SELECT email FROM users WHERE email = ?"
cur.execute(ur, (useremail,))
user = cur.fetchone()
if user[0] == useremail:
pas = "SELECT password FROM users WHERE email = ? AND password = ?"
cur.execute(pas, (useremail, password1,))
passW = cur.fetchone()
if passW[0] == password1:
return True
else:
return False
当没有匹配项时,^{} 返回
^{pr2}$None
。由于您从用户那里获取密码,并使用该密码和电子邮件进行查找,如果密码不匹配,则无法找到该行。结果,cur.fetchone()
返回None。事实上,这:可能会变成:
或如珍雅所说:
相关问题 更多 >
编程相关推荐