Я пытаюсь создать страницу входа в систему, используя python и tkinter. Я сделал большую часть этого, мне просто нужна помощь с проверкой. У меня есть имена пользователей и пароли, хранящиеся в .CSV. Программа работает, но мой цикл while неверен. Он корректно проверяет имя пользователя и пароль пользователя, но из-за цикла отправляет окно сообщения, в котором говорится, что произошел сбой, а затем - сообщение о том, что оно прошло успешно (зависит от того, сколько пользователей я сохранил). Также elif, который проверяет, не было ли ничего введено, заставляет окно сообщения закрываться и продолжать выскакивать. Спасибо за помощь.
def verification(self):
username = username_verify.get()
password = password_verify.get()
username_entry.delete(0, END)
password_entry.delete(0, END)
import csv
with open('Users.csv') as csvfile:
reader = csv.DictReader(csvfile)
database = []
for row in reader:
database.append(dict(username=row['username'], password=row['password']))
logged_in = False
while not logged_in:
for row in database:
username_file = row['username']
password_file = row['password']
if (username_file == username and password_file == password):
logged_in = True
tkinter.messagebox.showwarning("Success", "Login successful")
root.destroy()
import SecondWindow
elif username == "" or password == "":
tkinter.messagebox.showwarning("Error", "Username or password not entered, please retry!")
else:
tkinter.messagebox.showwarning("Error", "Username or password not recognised, please retry!")