word = (input("Введите слово: "))
a = word.count('a')
e = word.count('e')
i = word.count('i')
o = word.count('o')
u = word.count('u')
y = word.count('y')
if a == 0:
print("a = False")
if e == 0:
print("e = False")
if i == 0:
print("i = False")
if o == 0:
print("o = False")
if u == 0:
print("u = False")
if y == 0:
print("y = False")
print(f"Гласных: {a + e + i + o + u}")
print(f"Согласных: {len(word) - (a + e + i + o + u)}")
vowels = 'aeiuy'
word = (input("Введите слово: ")).lower()
print('количество согласных',
len(list(filter(lambda x: not x in vowels,word))))
Вот и всё решение
Комментарии преподавателя: 1. Для решения вам стоит воспользоваться методом строк count(). word.count('a') где word -- переменная содержащая наше слово, 'a' - символ, кол-во которых он ищет. Возвращает соответственно кол-во этой буквы в строке. 2. Вы должны использовать условия. Каждый раз когда проверяете на наличие буквы в слове, то проводите проверку, чтобы значение переменной не было нулю, если 0, то завершать работу программы выводя false.
Смогла сделать отдельно вывод количество гласных и False, когда какой-то буквы нет. Но туплю на согласных. Как их вывести в данной ситуации?
word = (input("Введите слово: "))
a = word.count('a')
e = word.count('e')
i = word.count('i')
o = word.count('o')
u = word.count('u')
y = word.count('y')
if a == 0:
print("a = False")
if e == 0:
print("e = False")
if i == 0:
print("i = False")
if o == 0:
print("o = False")
if u == 0:
print("u = False")
if y == 0:
print("y = False")
print(f"Гласных: {a + e + i + o + u}")
print(f"Согласных: .")