SQLite запрос возвращает false - PullRequest
       13

SQLite запрос возвращает false

0 голосов
/ 17 октября 2018

Так что для моего проекта я пытаюсь, чтобы пользователь ввел что-то в текстовое поле и, если оно совпадает с тем, что хранится в базе данных, он скажет им, что это правда.Однако в тот момент, даже когда введена правильная вещь, она вернет false.Это текущий код для части, которая получает ответ, возвращает и сравнивает его:

    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")

И это результат, который он выдает в режиме ожидания вместе с тем, что находится в базе данных

Пожалуйста, скажите мне, что я делаю не так.

1 Ответ

0 голосов
/ 17 октября 2018

Вы должны использовать fetchone() вместо fetchall().fetchall() возвращает количество строк (например: (('nucleus',),)), тогда как fetchone() возвращает только одну строку.Затем вы получите что-то вроде этого: ('nucleus',)Тогда вы можете сравнить его с labelA[0] == answerA.

...