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

Related Articles

Python String replace() Method

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

String replace() in Python returns a copy of the string where occurrences of a substring are replaced with another substring. 

Syntax of String replace() method

The replace() method in Python strings has the following syntax:

Syntax: string.replace(old, new, count)

Parameters: 

  • old – old substring you want to replace.
  • new – new substring which would replace the old substring.
  • count – (Optional ) the number of times you want to replace the old substring with the new substring. 

Return Value : It returns a copy of the string where all occurrences of a substring are replaced with another substring. 

Examples of Python replace() Methods

Replace all Instances of a single character using replace() in Python

In this example, we are only replacing a single character from a given string. The Python replace() method is case-sensitive, and therefore it performs a case-sensitive substring substitution, i.e. R in FOR is unchanged.

Python3




string = "grrks FOR grrks"
 
# replace all instances of 'r' (old) with 'e' (new)
new_string = string.replace("r", "e" )
 
print(string)
print(new_string)


Output : 

grrks FOR grrks
geeks FOR geeks

Replace all Instances of a String using replace() in Python

Here, we will replace all the geeks with GeeksforGeeks using replace() function.

Python3




string = "geeks for geeks \ngeeks for geeks"
 
print(string)
 
# Prints the string by replacing only
# 3 occurrence of Geeks
print(string.replace("geeks", "GeeksforGeeks"))


Output : 

geeks for geeks 
geeks for geeks
GeeksforGeeks for GeeksforGeeks 
GeeksforGeeks for GeeksforGeeks
 

Replace only a certain number of Instances using replace() in Python

In this example, we are replacing certain numbers of words. i.e. “ek” with “a” with count=3.

Python3




string = "geeks for geeks geeks geeks geeks"
 
# Prints the string by replacing
# e by a
print(string.replace("e", "a"))
 
# Prints the string by replacing only
# 3 occurrence of ek by a
print(string.replace("ek", "a", 3))


Output:  

gaaks for gaaks gaaks gaaks gaaks
geas for geas geas geeks geeks

Using a list comprehension and the join() method:

Approach:

Split the original string into a list of substrings using the split() method.
Use a list comprehension to replace each occurrence of old_substring with new_substring.
Join the list of substrings back into a string using the join() method.

Python3




my_string = "geeks for geeks "
old_substring = "k"
new_substring = "x"
 
split_list = my_string.split(old_substring)
new_list = [new_substring if i < len(split_list)-1 else '' for i in range(len(split_list)-1)]
new_string = ''.join([split_list[i] + new_list[i] for i in range(len(split_list)-1)] + [split_list[-1]])
 
print(new_string)


Output

geexs for geexs 

Time Complexity: O(n)
Space Complexity: O(n)


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