Вы можете использовать функцию sum
с выражением генератора:
def getNumWordsWithNVowels(wordList, num):
return sum(1 for w in wordList if sum(c in 'aeiou' for c in w.lower()) == num)
, чтобы:
aList = ['hello', 'aloha', 'world', 'foo', 'bar']
print(getNumWordsWithNVowels(aList, 1))
print(getNumWordsWithNVowels(aList, 2))
print(getNumWordsWithNVowels(aList, 3))
выходы:
2 # world, bar
2 # hello, foo
1 # aloha