Python SQLite查询返回false
因此,对于我的项目,我试图让用户在文本框中键入一些内容,如果它等于数据库中存储的内容,那么它将告诉他们这是真的。然而,即使输入了正确的内容,也会返回false。这是获取答案、返回并比较答案的部分的当前代码:Python SQLite查询返回false,python,sql,tkinter,sqlite,python-3.4,Python,Sql,Tkinter,Sqlite,Python 3.4,因此,对于我的项目,我试图让用户在文本框中键入一些内容,如果它等于数据库中存储的内容,那么它将告诉他们这是真的。然而,即使输入了正确的内容,也会返回false。这是获取答案、返回并比较答案的部分的当前代码: def submit(): answerA=entry_A.get() answerB=entry_B.get() answerC=entry_C.get() answerD=entry_D.get()
def submit():
answerA=entry_A.get()
answerB=entry_B.get()
answerC=entry_C.get()
answerD=entry_D.get()
answerE=entry_E.get()
answerF=entry_F.get()
print(answerA,", ",answerB,", ",answerC,", ",answerD,", ",answerE,", ",answerF)
labelA=cursor.execute\
("select labelA from diagramLabels where diaName == 'plantCell'").fetchall()
con.commit()
if labelA == answerA:
print("Answer A is correct")
else:
print("Answer A is false")
请告诉我我做错了什么。你应该使用
fetchone()
而不是fetchall()
fetchall()
返回许多行(如:(('nucleus',),)
),而fetchone()
只返回一行。
然后您将得到如下结果:('nucleus',)
您可以将其与labelA[0]==answerA进行比较