The Wayback Machine - https://web.archive.org/web/20220218183237/https://www.geeksforgeeks.org/python-replace-vowels-in-a-string-with-a-specific-character-k/
Skip to content
Related Articles

Related Articles

Improve Article
Save Article
Like Article

Python – Replace vowels in a string with a specific character K

  • Difficulty Level : Medium
  • Last Updated : 13 Jan, 2022

Given a string, replace all the vowels with character K.

Input : test_str = “Geeks for Geeks”; K=’#’
Output : “G##ks f#r G##ks” 
Explanation : All the vowels in test_str are replaced by a give particular character.

Input : test_list = “GFG”; K=”$”
Output : GFG
Explanation : As test_str contained no vowel, so the same string is returned.

Method #1 :  Using loop + replace()

Initially create a string of vowels and then iterate through the given test_str, on detecting a vowel in test_str replace the vowel with K using replace() method.

Python3




# Function to Replace each vowel in
# the string with a specified character
def replaceVowelsWithK(test_str, K):
 
    # string of vowels
    vowels = 'AEIOUaeiou'
 
    # iterating to check vowels in string
    for ele in vowels:
 
        # replacing vowel with the specified character
        test_str = test_str.replace(ele, K)
 
    return test_str
 
 
   
# Driver Code
# input string
input_str = "Geeks for Geeks"
 
# specified character
K = "#"
 
# printing input
print("Given Sting:", input_str)
print("Given Specified Character:", K)
 
# printing output
print("After replacing vowels with the specified character:",
      replaceVowelsWithK(input_str, K))
Output
Given Sting: Geeks for Geeks
Given Specified Character: #
After replacing vowels with the specified character: G##ks f#r G##ks

Output:

Given Sting: Geeks for Geeks 
Given Specified Character: # 
After replacing vowels with the specified character: G##ks f#r G##ks

Method #2 : Using nested loop 

Here, we first convert the given string into a list and then create a list of vowels and an empty list i.e new_string. After that elements of both string_list and vowel_list are compared and if the element is a vowel then K is appended to new_string else the element of the given string is appended. 

Python3




# Function to Replace each vowel
# in the string with a specified character
def replaceVowelsWithK(test_str, K):
 
    # creating list of vowels
    vowels_list = ['A', 'E', 'I', 'O', 'U', 'a', 'e', 'i', 'o', 'u']
 
    # creating empty list
    new_string = []
 
    # converting the given string to list
    string_list = list(test_str)
 
    # running 1st iteration for
    # comparing all the
    # characters of string with
    # the vowel characters
    for char in string_list:
 
        # running 2nd iteration for
        # comparing all the characters
        # of vowels with the string character
        for char2 in vowels_list:
 
            # comparing string character
            # and vowel character
            if char == char2:
 
                # if condition is true then adding
                # the specific character entered
                # by the user in the new list
                new_string.append(K)
                break
 
        # else adding the character
        else:
            new_string.append(char)
 
    # return the converted list into string
    return(''.join(new_string))
 
   
 
# Driver Code
# input string
input_str = "Geeks for Geeks"
 
# specified character
K = "#"
 
# printing input
print("Given Sting:", input_str)
print("Given Specified Character:", K)
 
# printing output
print("After replacing vowels with the specified character:",
      replaceVowelsWithK(input_str, K))
Output
Given Sting: Geeks for Geeks
Given Specified Character: #
After replacing vowels with the specified character: G##ks f#r G##ks


My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!