Python check vowel in string

This works for me and also counts the consonants as well (think of it as a bonus) however, if you really don't want the consonant count all you have to do is delete the last for loop and the last variable at the top.

Her is the python code:

data = input('Please give me a string: ')
data = data.lower()
vowels = ['a','e','i','o','u']
consonants = ['b','c','d','f','g','h','j','k','l','m','n','p','q','r','s','t','v','w','x','y','z']
vowelCount = 0
consonantCount = 0


for string in data:
    for i in vowels:
        if string == i:
            vowelCount += 1
    for i in consonants:
        if string == i:
            consonantCount += 1

print('Your string contains %s vowels and %s consonants.' %(vowelCount, consonantCount))

In this program, we need to count the number of vowels present in a string and display those vowels. This can be done using various methods. In this article, we will go through few of the popular methods to do this in an efficient manner. 
Examples: 
 

In a simple way
Input : Geeks for Geeks
Output :
5
['e', 'e', 'o', 'e', 'e']

This is in a different way
Input : Geeks for Geeks
Output : {'u': 0, 'o': 1, 'e': 4, 'a': 0, 'i': 0}

Counting vowels: String Way

In this method, we will store all the vowels in a string and then pick every character from the enquired string and check whether it is in the vowel string or not. The vowel string consists of all the vowels with both cases since we are not ignoring the cases here. If the vowel is encountered then count gets incremented and stored in a list and finally printed. 
 

Python3

def Check_Vow(string, vowels):

    final = [each for each in string if each in vowels]

    print(len(final))

    print(final)

string = "Geeks for Geeks"

vowels = "AaEeIiOoUu"

Check_Vow(string, vowels);

Output: 
 

5
['e', 'e', 'o', 'e', 'e']

Counting vowels: Dictionary Way

This also performs the same task but in a different way. In this method, we form a dictionary with the vowels and increment them when a vowel is encountered. In this method, we use the case fold method to ignore the cases, following which we form a dictionary of vowels with the key as a vowel. This is a better and efficient way to check and find the number of each vowel present in a string. 
 

Python3

def Check_Vow(string, vowels):

    string = string.casefold()

    count = {}.fromkeys(vowels, 0)

    for character in string:

        if character in count:

            count[character] += 1   

    return count

vowels = 'aeiou'

string = "Geeks for Geeks"

print (Check_Vow(string, vowels))

Output: 
 

{'u': 0, 'o': 1, 'e': 4, 'a': 0, 'i': 0}

 Counting vowels: regex way 

We can also use this method to perform this task. We can use the regular expression to perform this task. We use re.findall() method to find all the vowels in string make list with them. We use len on list to find total vowels in string. 

Python3

import re

def Check_Vow(string, vowels):

    str_list = re.findall(f'[{vowels}]', string, re.I)

    print(len(str_list))

    return str_list

vowels = 'aeiou'

string = "Geeks for Geeks"

print (Check_Vow(string, vowels))

Output:

5
['e', 'e', 'o', 'e', 'e'] 

How do you check a vowel in a string in Python?

We use re. findall() method to find all the vowels in string make list with them. We use len on list to find total vowels in string.

How do you check if there are vowels in a string?

To find the vowels in a given string, you need to compare every character in the given string with the vowel letters, which can be done through the charAt() and length() methods. charAt() : The charAt() function in Java is used to read characters at a particular index number.

How do you check a vowel in a string using a while loop in Python?

Take input string from the user. Count vowels in string using for loop, if statement, and ord() function. Inside the For Loop, we are using If Statement to check whether the character is a, e, i, o, u, A, E, I, O, U by using ord() function. If true, increment the vowels value otherwise, skip that character.

How do you determine the number of vowels and consonants in a string in Python?

Algorithm.
Define a string..
Convert the string to lower case so that comparisons can be reduced. ... .
If any character in string matches with vowels (a, e, i, o, u ) then increment the vcount by 1..
If any character lies between 'a' and 'z' except vowels, then increment the count for ccount by 1..
Print both the counts..