Проверка элементов строки по условию
Задача - "Напишите программу, которая проверяет введенную пользователем строку(string) на соответствие правилу: у строки нет ни одной гласной русской строчной буквы на каждой четной позиции. Пример подходящей строки: "пока!". Если строка подходит ,программа выводит на экран "какая хорошая строка", иначе "строка мне не нравится"" Из методички смог наскрести следующее:
s=input()
for i, letter in enumerate(s):
if i%2==0:
дальше пробовал махинации с list и set ,но так и не смог сделать рабочий вариант. Как это решить?
Ответы (1 шт):
Автор решения: Zhihar
→ Ссылка
например можно так:
text = "пока"
res = all(letter not in 'аеиоуэюя' for letter in text[1::2])
print("какая хорошая строка" if res else "строка мне не нравится")
а вообще почему ломать голову?
в лоб задача решается просто
res = True
for pos in range(len(text)):
if pos % 2 == 1 and text[pos] in 'аеиоуэюя':
res = False
break
if res:
print("какая хорошая строка")
else:
print("строка мне не нравится")
P.S.
говоря про четные позиция считал что счет начинается с 1 (первый символ, второй символ и т.д.), а не с 0