Как написать программу на Python, что бы она считывало строку и если в строке есть словосочетания которое мы скажем то выведется ответ который мы выдадим, например: Напишите программу, которая считывает одну строку, после чего выводит «МЯУ», если в введённой строке есть подстрока «кот», и «ГАВ» в противном случае. Пример 1 - ввод: Извините, пожалуйста, вы не подскажете, КОТорый час? вывод: МЯУ
Пример 2 - ввод: как дела? вывод: ГАВ
Ответы
Получаем строку с помощью input()
text = input('Input:\n')
Для удобства запишем зависимости ввода и вывода в словарь base
base = {'кот': 'МЯУ'}
Для поиска слова мы будим использовать строковой метод .find()
Чтобы перебрать все зависимости вставим ключи словаря в цикл for
for i in base.keys():
if text.find(i):
print(base[i])
Все работает! Но если написать что-то где нет слова кот то мы не получим на выходе ГАВ
Как такое сделать? Нам нужен сигнал о том что ни один вариант не подошёл. Добавим для этой цели переменную.
Изначально её значением будет True. При первом обнаружении в тексте ключевого слова, мы должны присвоить переменной False
Давайте обзовём её как isElse (else от англ. иначе)
Так-же добавим условие в конце. Если isElse == True (не произошло ни одного обнаружения) то мы должны напечатать ГАВ
isElse = True
for i in base.keys():
if text.find(i) != -1:
isElse = False
print(base[i])
if isElse:
print('ГАВ')
text = input('Input:\n')
base = {'кот': 'МЯУ'}
isElse = True
for i in base.keys():
if text.find(i) != -1:
isElse = False
print(base[i])
if isElse:
print('ГАВ')