← Все вопросы
Как посчитать количество гласных в слове?
11
Задачка: дано слово, посчитать сколько в нём гласных. Сделал через кучу if, выглядит ужасно. Есть способ покрасивее?
3 ответа
16
✓ Принятый ответ — помог автору
Проверяй вхождение в строку гласных:
word = 'программирование'
vowels = 'аеёиоуыэюя'
count = sum(1 for ch in word.lower() if ch in vowels)
print(count)
ch in vowels заменяет десяток if. sum(1 for ...) считает подходящие символы.
Рустам Закиров sum(1 for ...) — красиво, забираю · 6 месяцев назад
7
Через регулярки: import re; len(re.findall('[аеёиоуыэюя]', word.lower())). Тоже компактно.
5
Альтернатива без генератора: count = sum(word.lower().count(v) for v in 'аеёиоуыэюя').
Ваш ответ
Войдите, чтобы ответить на вопрос.