Count Vowels From a String in Python Using Iterative Method

Count Vowels From a String in Python Using Iterative Method
(Last Updated On: 29/05/2023)

The ability to analyze and manipulate strings is an essential skill in programming, and counting the occurrences of specific characters is a common task. In this program, We will take you through the step-by-step process to count Vowels From a String in Python Using Iterative Method. We will also explain the logic behind the code, and explore the fundamental concepts while providing a detailed breakdown of each step involved in its implementation. 

What is Iterative Method in Python?

An iterative method is a programming approach that involves using loops repeatedly to execute a block of code until a specific condition is met. Iteration allows you to perform tasks repeatedly, making it an essential concept in programming.

In Python, there are two main types of loops that facilitate iteration: the “for” loop and the “while” loop.

So let’s dive into the Python program to count vowels from a string using the iterative method.

Python Program to Count Vowels From a String Using Iterative Method

#Count Vowels From a String in Python Using Iterative Method
def countVowels(str):
    count = 0
    lstVowel = ['A', 'E', 'I', 'O', 'U']
    for i in range(len(str)):
            if str[i].upper() in lstVowel:
                count += 1
    return count
str = 'Python programming'

Code Explanation

  • Defining the countVowels function

First, we initiate the countVowels function that takes a string ‘str’ as a parameter. This function initializes a variable count to keep track of the vowels and creates a list lstVowel that contains all the uppercase vowels.

  • Iterating through the characters in the string

Now, the for loop iterates through each character in the string using the range(len(str)) construct which returns the length of the string, and range(len(str)) generates a sequence of numbers from 0 to the length of the string minus 1, which are used as indices to access each character.

  • Checking if the character is a vowel

Inside the for loop, the if statement checks if the uppercase representation of the current character str[i].upper() exists in the lstVowel list. The .upper() method is used to convert the character to uppercase to ensure a case-insensitive comparison. If the character is a vowel, the condition evaluates to True, and the ‘vowel count’ is incremented by 1.

  • Returning the vowel count value

After the loop finishes iterating through all the characters in the string, the final value of the vowel count is returned as the result of the countVowels function.

  • Calling the function and printing its result

In this step, the variable str is assigned the string ‘Python programming’. The countVowels function is called with the str variable as an argument and the return value, which is the count of vowels in the string, is printed using the print statement.


In this example, the given string ‘Python programming’ has 4 vowels (‘o’, ‘o’, ‘a’, ‘i’) and the output is displayed as 4. This output provides a numerical representation of the presence of vowels, which can be useful for various text analysis tasks or further processing.

There are multiple ways to count vowels in a string in Python

There are multiple approaches to finding the count of vowels in a string, such as using a while loop, list comprehension, or a recursive function that can be used to find matches and find all occurrences of vowels in the string. 

In this case, we identify the count of vowels in a string using the for loop since it offers: Simplicity, Readability, Flexibility, and Efficiency. This approach is straightforward to understand for future maintainers and easy for collaborators to handle additional conditions or requirements.

It iterates through the characters once, checking each character for vowel identification and incrementing the count. This approach has a linear time complexity of O(n), where n is the length of the string.

Overall, the given method using a for loop strikes a balance between simplicity, readability, and efficiency, making it a practical choice for finding the count of vowels in a string.

In this code, we get a deeper understanding of how to work with strings, loops, and conditional statements in Python. It demonstrated a simple and efficient approach to counting the number of vowels in a given string. By applying a loop and a list of vowels, the code iterates through each character in the string and checks if it is a vowel. If a vowel is found, the count is incremented.

This process allows us to determine the total count of vowels in the string. In this example, the given string ‘Python programming’ has 4 vowels (‘o’, ‘o’, ‘a’, ‘i’) and the output is displayed as 4.

Understanding and implementing this code can be particularly helpful in various applications, such as text analysis, data processing, and linguistic tasks. Additionally, it serves as a foundation for building more complex string manipulation functions and algorithms.

Some FAQs When We Use Iterative Method to Count Vowels From a String in Python
Are the comparisons case-sensitive?

No, the comparisons are case-insensitive. The program converts the characters to uppercase before checking for vowel membership.

What happens if the string contains both uppercase and lowercase vowels?

The program counts both uppercase and lowercase vowels since the uppercase conversion is applied before checking vowel membership.

Does the program count repeated vowels?

Yes, the program counts all occurrences of vowels, including repeated vowels.

Can I use this program to count vowels in multiple strings?

Yes, you can call the countVowels function with different strings as arguments to count the vowels in each string separately.

Can I modify this program to count vowels in languages other than English?

Yes, the program can be modified to count vowels in languages other than English. The vowel list would need to be updated with the appropriate vowels for the language.