Форум сайта python.su
Всем доброго времени суток, господа! Я только изучаю данный язык программирования, буквально только. Хотел бы попросить помощи, чтобы разобраться в механике работы условных операторов if, elif, else. Решил написать простенькую программу без модулей, суть которой заключается в следующем: пользователь выбирает операцию: вход или регистрация. Далее либо вводит логин/пароль, которые заведомо прописаны в программе, или же создает свои. Но проблема в том, что часть программы “вход” при любом раскладе выдает “неверно”:
login_1 = "Joe" password_1 = 12345 print( "Добро пожаловать! Выберите способ авторизации:") what = input( ' Вход / Регистрация: ') if what == "Вход": input("login ") input("password ") if "login " == login_1 and "password" == password_1 : print(" wellcome, Joe! ") if what == "Регистрация": name = input('Придумайте никнейм: ') pass_1 = input(' Придумайте пароль: ') pass_2 = input( 'Повторите пароль: ') if pass_1 == pass_2: print('Добро пожаловать ' + name ) input() else: pass_1 != pass_2 print('Пароли не совпадают! Повторите попытку. ') input() else: print(" Неверно, повторите попытку!")
Отредактировано Joe_Brother (Ноя. 17, 2021 13:25:11)
Офлайн
Joe_Brother начните изучение с начала еще раз. внимательно прочитайте про переменные, что принимает input и куда это сохранять. а еще поймите что строки с числом сравнивать бессмысленно
Бесплатный курс по программированию с нуля.
Работает прямо в браузере
Офлайн
что делают эти строки???
input("login ") input("password ") if "login " == login_1 and "password" == password_1 :
Офлайн
marvellikЭто условие должно по идее сравнивать логин и пароль с заданным в начале, и если условие выполняется, выводить надпись “Welcome”, в противном случае “Неверно”
что делают эти строки???
Офлайн
по факту вы сравниваете строку “login ” с значением переменной login_1 которое равно “Joe”
>>> "login " == "Joe" False >>>
Офлайн
вы же нигде не сохраняете ввод от пользователя! либо сохранять в переменных или сразу сравнивать
if input("login ") == login_1 and input("password ") == password_1 :
Офлайн
marvellik
по факту вы сравниваете строку “login ” с значением переменной login_1 которое равно “Joe”[/quote
Понял, благодарю
Офлайн
marvellikСпасибо большое, пойду учить мат. часть)
вы же нигде не сохраняете ввод от пользователя! либо сохранять в переменных или сразу сравнивать
Офлайн