Using the concept of what you are tying and keeping things simple, you could code it like this:
def vowels(word):
count = 0
vowels = ['a', 'e', 'i', 'o', 'u']
for alpha in word.lower():
if alpha in vowels:
count += 1
return count
word_list = ["Afghanistan", "Aruba", "Netherlands"]
for word in word_list:
n_vowels = vowels(word)
print(f"{word} {n_vowels}")
You could also expand on this so that, in the end, you output, not only the individual vowel count, but also the country (or any word) in the list that contains the most vowels.
What has been given to you in this thread is all good, but (IMHO) you should first learn the basics of Python coding before trying to master more advanced concepts; my guess is that right now you’re learning about data types (of which a list object is one), loops and functions.
I don’t see the need for your list comprehension in your function, because you can simply give the function one word at a time, rather than an entire list, then have a new function to deal with the resulting output:
Afghanistan 4
Aruba 3
Netherlands 3
It maybe that you have more code, but readability trumps complexity: get each part working correctly, before moving on to the next and have one function for each operation.
Again, it’s just my opinion and each coder will have their own take on this and their own style.
Edit done for typo correction.