Уведомления

Группа в Telegram: @pythonsu

#1 Ноя. 17, 2021 13:21:21

Joe_Brother
Зарегистрирован: 2021-11-17
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

Работа с условным оператором

Всем доброго времени суток, господа! Я только изучаю данный язык программирования, буквально только. Хотел бы попросить помощи, чтобы разобраться в механике работы условных операторов 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)

Офлайн

#2 Ноя. 17, 2021 13:39:07

marvellik
Зарегистрирован: 2016-05-15
Сообщения: 639
Репутация: +  73  -
Профиль   Отправить e-mail  

Работа с условным оператором

Joe_Brother начните изучение с начала еще раз. внимательно прочитайте про переменные, что принимает input и куда это сохранять. а еще поймите что строки с числом сравнивать бессмысленно

Бесплатный курс по программированию с нуля.
Работает прямо в браузере

Офлайн

#3 Ноя. 17, 2021 13:40:15

marvellik
Зарегистрирован: 2016-05-15
Сообщения: 639
Репутация: +  73  -
Профиль   Отправить e-mail  

Работа с условным оператором

что делают эти строки???

 	input("login ")
	input("password ")
if "login " == login_1 and "password" == password_1 :

Офлайн

#4 Ноя. 17, 2021 13:43:39

Joe_Brother
Зарегистрирован: 2021-11-17
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

Работа с условным оператором

marvellik
что делают эти строки???
Это условие должно по идее сравнивать логин и пароль с заданным в начале, и если условие выполняется, выводить надпись “Welcome”, в противном случае “Неверно”

Офлайн

#5 Ноя. 17, 2021 13:47:03

marvellik
Зарегистрирован: 2016-05-15
Сообщения: 639
Репутация: +  73  -
Профиль   Отправить e-mail  

Работа с условным оператором

по факту вы сравниваете строку “login ” с значением переменной login_1 которое равно “Joe”

 >>> "login " == "Joe"
False
>>>
то же и с паролем

Офлайн

#6 Ноя. 17, 2021 13:49:20

marvellik
Зарегистрирован: 2016-05-15
Сообщения: 639
Репутация: +  73  -
Профиль   Отправить e-mail  

Работа с условным оператором

вы же нигде не сохраняете ввод от пользователя! либо сохранять в переменных или сразу сравнивать

 if input("login ") == login_1 and input("password ") == password_1 :
но далее с этим вводом вы не сможете работать

Офлайн

#7 Ноя. 17, 2021 13:50:33

Joe_Brother
Зарегистрирован: 2021-11-17
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

Работа с условным оператором

marvellik
по факту вы сравниваете строку “login ” с значением переменной login_1 которое равно “Joe”[/quote
Понял, благодарю

Офлайн

#8 Ноя. 17, 2021 13:51:26

Joe_Brother
Зарегистрирован: 2021-11-17
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

Работа с условным оператором

marvellik
вы же нигде не сохраняете ввод от пользователя! либо сохранять в переменных или сразу сравнивать
Спасибо большое, пойду учить мат. часть)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version