В настоящее время я создаю программу, которая создает страницу входа и запрашивает имя пользователя и пароль. Затем пользователь вводит имя пользователя и пароль, и если он взят из файла данных, он выполняет вход в систему. Всякий раз, когда я ввожу первых двух пользователей, он говорит, что эти пользователи не существуют, хотя они существуют. Когда я ввожу третьего или четвертого пользователя, он работает. пожалуйста помоги.

Admins.txt = Пользователь1, 24680 Пользователь2, 13579 Пользователь3, 56789

print("1. Administrator Log-In Portal")
print("2. Make a Reservation")
print("3. Close Application")
choice = int(input("What would you like to do?"))
if (choice == 1):
    file = open("admins.txt", "r")
    print("Administrator Login Portal")
    print("--------------------------")
    username = input("Enter Username:")
    password = input("Enter Password:")
    for line in file:
        a,b = line.split(",")
        b = b.strip( )
    if(a == username and b == password):
        print("Login Successful!")            
    else:
        print("Wrong username/password")
        file.close( )
0
Tyler_Olznoi 3 Май 2021 в 00:25

1 ответ

Лучший ответ

Поскольку вы перебираете элементы и сохраняете последний пароль / имя пользователя в переменных a и b, работать будет только последний пользователь. Я рекомендую использовать словарь для хранения логинов и паролей.

file = open("admins.txt", "r")
    print("Administrator Login Portal")
    print("--------------------------")
    username = input("Enter Username:")
    password = input("Enter Password:")
    login_info = {}
    for line in file:
        name, password = line.split(",")
        password = password.strip()
        login_info[name] = password
    if username in login_info.keys():
        if(login_info[name] == password):
            print("Login Successful!")
        else:
            print("Wrong password")
            file.close()
    else:
        print("Wrong username")
        file.close()
0
BIT-REAPER 2 Май 2021 в 21:34