dsasdadwd awdawdaw
Профи
(959)
1 месяц назад
Ошибка в вашем коде возникает из-за неправильной структуры блоков if/elif/else. Проблема в том, что else: находится вне блока, к которому он должен принадлежать. Он должен быть частью блока if/elif для обработки команд.
Вот исправленный код:
login = 'admin'
# Спросите у пользователя логин и сравните со своим
user_login = input('Ваш логин: ')
if user_login == login:
print('Добро пожаловать, создатель! Что вы хотите изменить?')
else: # Используем else вместо второго if
print('Добро пожаловать,', user_login, '!')
command = input('Какую команду вы выберете?')
# Допишите условие для запуска команды и другой исход при отсутствии команды
if command == "Текстовая игра":
print("Здравствуйте!")
door = int(input("Какую дверь выберешь?"))
if door == 1:
print("You died!")
if door == 2:
print("You won!")
if door == 3:
print("You met Luffy and entered the world of One Piece.")
elif command == "квиз":
point = 0
# Напиши свой квиз!
name = input("Whats your name?")
age = int(input("Сколько тебе лет?"))
print("Привет!Это квиз о знании вселенной Ван Пис!")
q1 = input("Как зовут гг?")
if q1 == "Luffy":
print("Верно!")
point += 1
else:
print("Неверно!Правильный ответ - Luffy")
print("Количество ваших очков:", point)
q2 = int(input("Сколько лет Луффи до таймскипа?"))
if q2 == 17:
print("Верно!")
point += 1
else:
print("Неверно!Правильный ответ - 17")
print("Количество ваших очков:", point)
q3 = int(input("Сколько у Луффи братьев?"))
if q3 == 1 or q3 == 2:
print("Верно!")
point += 1
else:
print("Неверно!Правильный ответ- 1 or 2")
print("Количество ваших очков:", point)
q4 = (input("Кто прошлые владелецы шляпы Луффи?"))
q5 = (input("Кто прошлые владелецы шляпы Луффи?"))
if q4 == "Роджер" and q5 == "Шанкс":
print("Верно!")
point += 1
else:
print("Неверно!Правильный ответ-Роджер, Шанкс")
print("Количество ваших очков:", point)
q6 = input("Как зовут Белоуса?")
if q6 == "Эдвард":
print("Верно!")
point += 1
else:
print("Неверно!Правильный ответ - Эдвард")
print("Количество ваших очков:", point)
print("Поздравляю вы прошли квиз!")
else:
print("такой команды нет")
python
dsasdadwd awdawdawПрофи (959)
1 месяц назад
Основные изменения и объяснения:
Замена второго if на else: Вместо второго if user_login != login: мы используем else:. Это логически правильно, потому что если логин не равен ‘admin’, то нужно выполнять блок кода для обычного пользователя. Два отдельных if привели бы к тому, что оба блока могли бы выполниться, если бы логин не был ‘admin’.
Правильное выравнивание else: Самое главное - убедитесь, что else: находится на том же уровне отступа, что и if и elif, к которым он относится. В данном случае, он должен быть внутри блока else первого if (проверка логина). Он должен быть на том же уровне, что и if command == "Текстовая игра":.
#Спросите у пользователя логин и сравните со своим
user_login = input('Ваш логин: ')
if user_login == login:
print('Добро пожаловать, создатель! Что вы хотите изменить?')
if user_login != login:
print('Добро пожаловать,', user_login,'!')
command = input('Какую команду вы выберете?')
#Допишите условие для запуска команды и другой исход при отсутствии команды
if command == "Текстовая игра":
print("Здравствуйте!")
door=int(input("Какую дверь выберешь?"))
if door==1:
print("You died!")
if door==2:
print("You won!")
if door==3:
print("You met Luffy and entered the world of One Piece.")
elif command == "квиз":
point = 0
#Напиши свой квиз!
name = input("Whats your name?")
age = int(input("Сколько тебе лет?"))
print("Привет!Это квиз о знании вселенной Ван Пис!")
q1 = input("Как зовут гг?")
if q1 == "Luffy":
print("Верно!")
point += 1
else:
print("Неверно!Правильный ответ - Luffy")
print("Количество ваших очков:", point )
q2 = int(input("Сколько лет Луффи до таймскипа?"))
if q2 == 17:
print("Верно!")
point += 1
else:
print("Неверно!Правильный ответ - 17")
print("Количество ваших очков:", point )
q3 = int(input("Сколько у Луффи братьев?"))
if q3 == 1 or q3 == 2:
print("Верно!")
point += 1
else:
print("Неверно!Правильный ответ- 1 or 2")
print("Количество ваших очков:", point )
q4 = (input("Кто прошлые владелецы шляпы Луффи?"))
q5 = (input("Кто прошлые владелецы шляпы Луффи?"))
if q4 == "Роджер" and q5 == "Шанкс":
print("Верно!")
point += 1
else:
print("Неверно!Правильный ответ-Роджер, Шанкс")
print("Количество ваших очков:", point )
q6 = input("Как зовут Белоуса?")
if q6 == "Эдвард":
print("Верно!")
point += 1
else:
print("Неверно!Правильный ответ - Эдвард")
print("Количество ваших очков:", point )
print("Поздравляю вы прошли квиз!" )
else:
print("такой команды нет")
почему ошибка на последнем else
соре за кринж