Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите найти ошибку в коде

Илья Галкин Ученик (95), на голосовании 11 месяцев назад
 дело в том что после того как программа отвечаеn на "да"  и мы пишем например "развлечение" то просто до бесконечности повторяется ответ после "да"(код написан ниже)

print ('Привет меня зовут "Ботик".')
print('Что я умею: рекомендовать развлечения, отвечать на вопросы и поддерживать разговор')
conversation = input('Ты хочешь начеть разговор? Если готов то ответь да, а если неготов то ответь нет')
conversation = conversation.lower()
while conversation == 'да':
answer = input('Отлично, о чем ты хочешь поговорить?')
answer = answer.lower
if answer == 'развлечения':
game = input('Отличная тема для разговора, выбери какой типо развлечений тебя интересует, активный или спокойный')
game = game.liwer
if game == 'активный':
print('Я могу тебе посоветовать сходить на улицу и поиграть в футбол, или ты сходить в парк оттракционов.')
if game == 'спокойный':
print('Я могу посоветовать тебе сходить на прогулку в парк или остатся дома и поиграть в настольные игры с семьёй.')
if game != 'активный' or 'спокойный':
print('Извени я тебя не понял')
if answer == 'ответь на вопрос':
question = input('Я с радость отвечу на твой вопрос о том кто меня создал или о том что можно поделать в эти выходные')
question = question.lower
if question == 'раскажи о том кто тебя создал':
print('Меня создал древний маг который одалел Волан-де-Морта.')
if question == 'расскажи о том что можно поделать в эти выходные':
print('Судя по моим данным в эти выходные будет идти снег, поэтому можно сходить на снежную горку с друзьями.')
if question != 'расскажи о том кто тебя создал' or 'расскажи что о том что можно поделать в эти выходный':
print('Извени, я тебя не понял')
else:
print('Извени видимо мы не поняли друг друга')
Голосование за лучший ответ
Babaluda top Знаток (385) 12 месяцев назад
c#?
Илья ГалкинУченик (95) 12 месяцев назад
нет, питон
Babaluda top Знаток (385) -, Тогда сорри нет
Nikassaiop End Просветленный (41589) 12 месяцев назад
Исправить легко: ты ни в каком условии не обновляешь conversation, чтобы срабатывали другие условия. В итоге оно у тебя вечно да.
Могу рекомендовать такие правки
 print ('Привет меня зовут "Ботик".') 
print('Что я умею: рекомендовать развлечения, отвечать на вопросы и поддерживать разговор')
conversation = input('Ты хочешь начеть разговор? Если готов то ответь да, а если неготов то ответь нет\n')
conversation = conversation.lower()
if conversation == 'да':
answer = input('Отлично, о чем ты хочешь поговорить?\n')
answer = answer.lower()
if answer == 'развлечения':
game = input('Отличная тема для разговора, выбери какой типо развлечений тебя интересует, активный или спокойный\n')
game = game.lower()
if game == 'активный':
print('Я могу тебе посоветовать сходить на улицу и поиграть в футбол, или ты сходить в парк оттракционов.')
if game == 'спокойный':
print('Я могу посоветовать тебе сходить на прогулку в парк или остатся дома и поиграть в настольные игры с семьёй.')
else:
print('Извени я тебя не понял')
if answer == 'ответь на вопрос':
question = input('Я с радость отвечу на твой вопрос о том кто меня создал или о том что можно поделать в эти выходные\n')
question = question.lower()
if question == 'раскажи о том кто тебя создал':
print('Меня создал древний маг который одалел Волан-де-Морта.')
if question == 'расскажи о том что можно поделать в эти выходные':
print('Судя по моим данным в эти выходные будет идти снег, поэтому можно сходить на снежную горку с друзьями.')
else:
print('Извени, я тебя не понял')
else:
print('Извини видимо мы не поняли друг друга')
Советую также поработать над грамматикой и добавить выбор ответа цифрой вместо набирания его вручную каждый раз.
Илья ГалкинУченик (95) 12 месяцев назад
очень прошу, можешь скинуть исправленный код, я просто не понимаю как это использовать в коде
Nikassaiop End Просветленный (41589) Подправил, будет работать
Илья ГалкинУченик (95) 12 месяцев назад
благодарю
Похожие вопросы