
A = 0 b = 0 def pluss(): ask=input("Твой ответ: ") for i in range(1): print("Как тебя зовут?")
pluss() if ask == "doggy": print("┈┈┏╮┏╮┈┈┈┈┈┈┈┈╭╮") print("┈╭┛┗┛┗┳━━━━━━╮┃┃") print("┈┃▅┃▅┈┃╰╰╰╰╰╰┣╯┃") print("▇┻━╯┈┈┃╰╰╰╰╰╰┣━╯") print("┣━━━╯┈╰╰╰╰╰╰╰┃┈┈") print("╰━━┳┳━┓┏━┳┳┓┏╯┈┈") print("┈┈┈┃┃┈┃┃┈┃┃┃┃┈┈┈") else: print("Как дела?") pluss() if ask == "doggy": print("┈┈┏╮┏╮┈┈┈┈┈┈┈┈╭╮") print("┈╭┛┗┛┗┳━━━━━━╮┃┃") print("┈┃▅┃▅┈┃╰╰╰╰╰╰┣╯┃") print("▇┻━╯┈┈┃╰╰╰╰╰╰┣━╯") print("┣━━━╯┈╰╰╰╰╰╰╰┃┈┈") print("╰━━┳┳━┓┏━┳┳┓┏╯┈┈") print("┈┈┈┃┃┈┃┃┈┃┃┃┃┈┈┈") else: print("Где встретимся в следующий?") pluss() if ask == "doggy": print("┈┈┏╮┏╮┈┈┈┈┈┈┈┈╭╮") print("┈╭┛┗┛┗┳━━━━━━╮┃┃") print("┈┃▅┃▅┈┃╰╰╰╰╰╰┣╯┃") print("▇┻━╯┈┈┃╰╰╰╰╰╰┣━╯") print("┣━━━╯┈╰╰╰╰╰╰╰┃┈┈") print("╰━━┳┳━┓┏━┳┳┓┏╯┈┈") print("┈┈┈┃┃┈┃┃┈┃┃┃┃┈┈┈") else: print("До встречи") почему он не видит ASK и где ещё ошибки

Ответы на вопрос

Ответ:
1) возможно конечно местный редактор сожрал все отступы, но без них python корректно работать не будет.
2) Внутри pluss() ask - это локальная переменная, и при выходе из функции её значение исчезает. В данном случае, на сколько я понял она играет роль глобальной переменной, для этого внутрь функции нужно дописать global ask, и естественно до определения функции инициализировать переменную
Объяснение:
A = 0
b = 0
ask = ""
def pluss():
global ask
ask=input("Твой ответ: ")
for i in range(1):
print("Как тебя зовут?")
pluss()
if ask == "doggy":
print("┈┈┏╮┏╮┈┈┈┈┈┈┈┈╭╮")
print("┈╭┛┗┛┗┳━━━━━━╮┃┃")
print("┈┃▅┃▅┈┃╰╰╰╰╰╰┣╯┃")
print("▇┻━╯┈┈┃╰╰╰╰╰╰┣━╯")
print("┣━━━╯┈╰╰╰╰╰╰╰┃┈┈")
print("╰━━┳┳━┓┏━┳┳┓┏╯┈┈")
print("┈┈┈┃┃┈┃┃┈┃┃┃┃┈┈┈")
else:
print("Как дела?")
pluss()
if ask == "doggy":
print("┈┈┏╮┏╮┈┈┈┈┈┈┈┈╭╮")
print("┈╭┛┗┛┗┳━━━━━━╮┃┃")
print("┈┃▅┃▅┈┃╰╰╰╰╰╰┣╯┃")
print("▇┻━╯┈┈┃╰╰╰╰╰╰┣━╯")
print("┣━━━╯┈╰╰╰╰╰╰╰┃┈┈")
print("╰━━┳┳━┓┏━┳┳┓┏╯┈┈")
print("┈┈┈┃┃┈┃┃┈┃┃┃┃┈┈┈")
else:
print("Где встретимся в следующий?")
pluss()
if ask == "doggy":
print("┈┈┏╮┏╮┈┈┈┈┈┈┈┈╭╮")
print("┈╭┛┗┛┗┳━━━━━━╮┃┃")
print("┈┃▅┃▅┈┃╰╰╰╰╰╰┣╯┃")
print("▇┻━╯┈┈┃╰╰╰╰╰╰┣━╯")
print("┣━━━╯┈╰╰╰╰╰╰╰┃┈┈")
print("╰━━┳┳━┓┏━┳┳┓┏╯┈┈")
print("┈┈┈┃┃┈┃┃┈┃┃┃┃┈┈┈")
else:
print("До встречи")



Ваш код имеет некоторые ошибки и не работает как ожидалось из-за того, что переменная ask
находится в локальной области видимости функции pluss()
. Чтобы исправить это, вы можете возвращать значение ask
из функции pluss()
и сохранять его в переменной. Вот исправленный код:
pythonA = 0
b = 0
def pluss():
ask = input("Твой ответ: ")
return ask
ask = pluss() # Получаем ответ от пользователя в переменной ask
if ask == "doggy":
print("┈┈┏╮┏╮┈┈┈┈┈┈┈┈╭╮")
print("┈╭┛┗┛┗┳━━━━━━╮┃┃")
print("┈┃▅┃▅┈┃╰╰╰╰╰╰┣╯┃")
print("▇┻━╯┈┈┃╰╰╰╰╰╰┣━╯")
print("┣━━━╯┈╰╰╰╰╰╰╰┃┈┈")
print("╰━━┳┳━┓┏━┳┳┓┏╯┈┈")
print("┈┈┈┃┃┈┃┃┈┃┃┃┃┈┈┈")
else:
print("Как дела?")
ask = pluss() # Получаем ответ от пользователя в переменной ask
if ask == "doggy":
print("┈┈┏╮┏╮┈┈┈┈┈┈┈┈╭╮")
print("┈╭┛┗┛┗┳━━━━━━╮┃┃")
print("┈┃▅┃▅┈┃╰╰╰╰╰╰┣╯┃")
print("▇┻━╯┈┈┃╰╰╰╰╰╰┣━╯")
print("┣━━━╯┈╰╰╰╰╰╰╰┃┈┈")
print("╰━━┳┳━┓┏━┳┳┓┏╯┈┈")
print("┈┈┈┃┃┈┃┃┈┃┃┃┃┈┈┈")
else:
print("Где встретимся в следующий?")
ask = pluss() # Получаем ответ от пользователя в переменной ask
if ask == "doggy":
print("┈┈┏╮┏╮┈┈┈┈┈┈┈┈╭╮")
print("┈╭┛┗┛┗┳━━━━━━╮┃┃")
print("┈┃▅┃▅┈┃╰╰╰╰╰╰┣╯┃")
print("▇┻━╯┈┈┃╰╰╰╰╰╰┣━╯")
print("┣━━━╯┈╰╰╰╰╰╰╰┃┈┈")
print("╰━━┳┳━┓┏━┳┳┓┏╯┈┈")
print("┈┈┈┃┃┈┃┃┈┃┃┃┃┈┈┈")
else:
print("До встречи")
Теперь код будет работать корректно, и он будет запрашивать ответ пользователя в каждой итерации и проверять его.


Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili