Python String replace() Method
The string replace() method returns a copy of the string where occurrences of a substring are replaced with another substring.
Example:
string = "Hello World"
new_string = string.replace("Hello", "Good Bye")
print(new_string)
Output
Good Bye World
What is String replace() Method?
String replace() is a built-in function in Python and it is used to replace a substring with another string. It will replace every occurrence of that substring, so it should be used with caution.
It does not change the original string but returns a new one. It is mostly used in string substitution.
String replace() Method 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.
Python’s replace() method and more in-built function are valuable skill for anyone involved in text manipulation and data preprocessing tasks. To deepen your understanding of string operations and explore advanced techniques in data handling, check out our Complete Machine Learning & Data Science Program . This course covers everything from basic string manipulation to advanced data processing methods, empowering you to become proficient in Python programming and data analysis.
How to Use String replace() Function
You can easily use the replace() function, you just need to call the function with a string object and pass the strings as a parameter. The first parameter is the substring you want to replace, and the second parameter is the string you want to replace with.
Let’s understand it better how to replace a string in Python with a simple example:
string = "Replace"
new_string = string.replace("Replace", "Replaced")
print(new_string)
Output
Replaced
More Examples of String replace() Method
In this section, we will see different examples of Python string replacement.
Example:
string = "Good Morning"
new_string = string.replace("Good", "Great")
print(new_string)
Output
Great Morning
1. Replace all Instances of a Single Character in a String
In this example, we are only replacing a single character from a given string. The Python string replacement approach using the replace() method is case-sensitive, and therefore it performs a case-sensitive substring substitution, i.e. R in FOR is unchanged.
Example:
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
Time Complexity: O(n)
Space Complexity: O(n)
2. Replace all Instances of a String in a String
Here, we will use the Python string replacement approach using replace() to replace all the geeks with GeeksforGeeks using the replace() function.
Example:
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
Time Complexity: O(m*n)
Space Complexity: O(n)
3. Replace only a Certain Number of Instances in a String
In this example, we will use the Python string replacement approach using replace() replacing certain numbers of words. i.e. “ek” with “a” with count=3 .
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
Time Complexity: O(n)
Space Complexity: O(n)
4. Replace String using a List Comprehension and join() Method
Here, we will do string replacement without using replace(). First, we will split the original string into a list of substrings using the split() method . Then 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.
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)
We have covered the definition, syntax, and examples of the string replace() method in Python. We also saw a technique to replace string without using the replace() function.
String replacement is a very important operation on strings. It is very easy and simple to use.
Read Other String Methods
Similar Reads:
- Replace all occurrences of a substring in a string
- Replace substring in list of strings
- Replace multiple characters at once
- Case insensitive string replacement
Python String replace() Method – FAQs
What is replace() in Python?
replace() is a built-in string method in Python used to create a new string by replacing occurrences of a substring with another substring.
How to replace a string expression in Python?
You can use the replace() method to replace a substring with another substring in a string.
original_string = "Hello, world!"
new_string = original_string.replace("world", "Python")
print(new_string) # Output: Hello, Python!
How to change a string in Python?
In Python, strings are immutable , meaning you cannot change them in place. Instead, you create a new string with the desired changes using methods like replace().
original_string = "Hello, world!"
new_string = original_string.replace("world", "Python")
print(new_string) # Output: Hello, Python!
Can strings in Python be replaced?
Yes, strings in Python can be replaced using methods like replace() to create new strings with desired modifications.
How to replace characters in a string?
To replace characters in a string, use the replace() method with the characters you want to replace and their replacements.
original_string = "apple"
new_string = original_string.replace("a", "b")
print(new_string) # Output: bpple


