Задано список слов. Вывести все гласные буквы, которые не входят ни в какое из слов. Использовать множества)

str_data=input("Enter string: ")
print("Input data:", str_data)
str_1='aeoyui'
set1=set()
set2=set()
for i in range(len(str_data)):
    if str_data[i] in str_1:
        set2.add(str_data[i])
    else:
       set1.add(str_data[i])

print(" Result:", set1)

Не могу понять как вывести те гласные буквы, которые не являются в слове, поправьте пожалуйста и если можно объясните)Буду очень благодарен


Ответы (2 шт):

Автор решения: MBo

Положите гласные в сет. Если встретили гласную - удаляйте её из сета. Что останется - выводите.

s = 'abcy ooo'
vowelset = set('aeoyui')
for c in s:
    if c in vowelset:
        vowelset.remove(c)
print(vowelset)

>>> {'e', 'i', 'u'}
           
→ Ссылка
Автор решения: Евгений

Если нужно найти гласные, которые не входят ни в одно слово предложения, значит, нужно из множества гласных убрать все буквы, которые входят в строку:

str_data=input("Enter string: ")
print("Input data:", str_data)

vowel='aeoyui'

result = set(vowel) - set(str_data)
print("Result:", result)

Результат:

Enter string: hello, world, hah
Input data: hello, world, hah
Result: {'i', 'y', 'u'}
→ Ссылка