Skip to content
Related Articles
Get the best out of our app
GeeksforGeeks App
Open App
geeksforgeeks
Browser
Continue

Related Articles

Python program to count number of vowels using sets in given string

Improve Article
Save Article
Like Article
Improve Article
Save Article
Like Article

Given a string, count the number of vowels present in given string using Sets. Prerequisite: Sets in Python Examples:

Input : GeeksforGeeks
Output : No. of vowels : 5

Input : Hello World
Output : No. of vowels :  3

Approach: 1. Create a set of vowels using set() and initialize a count variable to 0. 2. Traverse through the alphabets in the string and check if the letter in the string is present in set vowel. 3. If it is present, the vowel count is incremented. Below is the implementation of above approach: 

Python3




# Python3 code to count vowel in
# a string using set
 
# Function to count vowel
def vowel_count(str):
     
    # Initializing count variable to 0
    count = 0
     
    # Creating a set of vowels
    vowel = set("aeiouAEIOU")
     
    # Loop to traverse the alphabet
    # in the given string
    for alphabet in str:
     
        # If alphabet is present
        # in set vowel
        if alphabet in vowel:
            count = count + 1
     
    print("No. of vowels :", count)
     
# Driver code
str = "GeeksforGeeks"
 
# Function Call
vowel_count(str)

Output:

No. of vowels : 5

Time Complexity: O(n), where n is the length of the string. We traverse the string character by character and for each character, we do a constant time operation to check if it is a vowel or not.
Auxiliary Space: O(1). We only used constant extra space for setting up the set.

Method 2: Use list comprehension to count the number of vowels in the given string

  • Create a string containing all the vowels.
  • Use list comprehension to iterate over each character in the given string and check if it is a vowel or not.
  • If the character is a vowel, add it to a list.
  • Use the len() function to count the number of elements in the list, which will give the count of vowels in the given string.
  • Print the count of vowels in the given string.

Python3




def vowel_count(str):
    # Creating a list of vowels
    vowels = "aeiouAEIOU"
     
    # Using list comprehension to count the number of vowels in the string
    count = len([char for char in str if char in vowels])
     
    # Printing the count of vowels in the string
    print("No. of vowels :", count)
 
# Driver code
str = "GeeksforGeeks"
 
# Function Call
vowel_count(str)

Output

No. of vowels : 5

Time Complexity: O(n), where n is the length of the string. 
Auxiliary Space: O(1). 


My Personal Notes arrow_drop_up
Last Updated : 27 Feb, 2023
Like Article
Save Article
Similar Reads
Related Tutorials