Подскажите, где я допустил ошибку?
if registration_password = None:
print ("Для начала необходимо пройти регистрацию")
registration_password = str(input("Введите пароль для регистрации"))
elif:
login_password = str(input("Введите пароль для входа"))
if registration_password = login_password:
print ("Вы успешно вошли в систему")
else:
print ("Пароль указан не верно")
Ответы (1 шт):
Конструкция
str(input())является лишней, поскольку input изначально возвращает строковое значение, тоесть тип данныхstr.В случае с
registration_password = Noneиregistration_password = login_passwordнеобходимо писать==, поскольку==является оператором сравнения, а=- оператором присваивания. А в случае сregistration_password = str(input("Введите пароль для регистрации"))как раз применён оператор присваивания.elifдословно переводится какelse if, т. е. означает ("если не истинно предыдущее условие, является ли конкретно это истинным"). В данном случае код не выполняется, поскольку не написано условие дляelif. Здесь будет уместнее писатьelse.Для сравнивания переменной со значением
Noneлучше использовать операторis:if registration_password is None:
Надеюсь, что ответ понятен. Ниже готовый код:
registration_password = None
if registration_password is None:
print("Для начала необходимо пройти регистрацию")
registration_password = str(input("Введите пароль для регистрации"))
login_password = str(input("Введите пароль для входа"))
else:
login_password = str(input("Введите пароль для входа"))
if registration_password == login_password:
print("Вы успешно вошли в систему")
else:
print("Пароль указан не верно")