Python Tutorial: Replace Character in a String


In Python, strings are a sequence of characters enclosed within quotes. They are immutable, which means that once a string is created, it cannot be modified. However, you can create a new string based on the existing one with the desired changes.

One common operation that you may need to perform on a string is replacing a character or a substring with another character or substring. This can be easily done using Python’s built-in string methods or regular expressions.

In this tutorial, we will explore different ways to replace characters in a string in Python, including using the `replace()` method and regular expressions.

Understanding Strings in Python

In Python, a string is a sequence of characters enclosed in single or double quotation marks. Strings are immutable, which means that once a string is created, its contents cannot be changed.

To create a string variable in Python, simply assign it to a value enclosed in either single or double quotation marks:

my_string = 'Hello World!'

Strings can also be concatenated using the `+` operator:

string1 = 'Hello'
string2 = 'World'
my_string = string1 + ' ' + string2 + '!'

Python provides many built-in functions for working with strings. One of these functions is the `replace()` function, which allows you to replace one character or substring with another within a string.

The syntax for the `replace()` function is as follows:

new_string = my_string.replace(old_value, new_value)

Here, `old_value` is the character or substring that you want to replace, and `new_value` is the value that you want to replace it with. The `replace()` function returns a new string with the specified replacements made.

For example, let’s say we have the following string:

my_string = 'Hello World!'

If we want to replace the space between “Hello” and “World” with an underscore, we can use the `replace()` function as follows:

new_string = my_string.replace(' ', '_')



In this example, the old value is a space character (`’ ‘`), and the new value is an underscore (`’_’`). The `replace()` function returns a new string (`’Hello_World!’`) with the space replaced by an underscore.

Overall, understanding how to work with strings in Python is essential for any programmer who wants to manipulate textual data. The `replace()` function is just one of many useful string functions that Python provides.

Replacing a Character in a String using replace() method

In Python, strings are immutable, which means that once a string is created, it cannot be modified. However, you can create a new string by replacing certain characters in the original string. One way to do this is by using the replace() method.

The replace() method is a built-in Python function that returns a new string with all occurrences of a specified substring replaced with another substring. The syntax for using the replace() method is as follows:

string.replace(old_value, new_value, count)

Here, `string` is the original string that you want to modify. `old_value` is the substring that you want to replace and `new_value` is the substring that you want to replace it with. `count` is an optional parameter that specifies the maximum number of replacements to make. If `count` is not specified, all occurrences of `old_value` will be replaced.

Let’s look at an example:

sentence = "The quick brown fox jumps over the lazy dog"
new_sentence = sentence.replace("o", "0")

In this example, we first define a string called `sentence`. We then use the replace() method to replace all occurrences of the letter “o” with the number “0”. The resulting string is stored in a new variable called `new_sentence`. Finally, we print out the new sentence.

The output of this code would be:

The quick br0wn f0x jumps 0ver the lazy d0g

As you can see, all occurrences of “o” have been replaced with “0”.

In conclusion, if you need to replace one or more characters in a string in Python, the replace() method provides an easy and efficient way to do so.

Replacing Multiple Characters in a String using translate() method

In Python, we can replace multiple characters in a string using the `translate()` method. This method returns a string where some specified characters are replaced with the character described in a dictionary, or in a mapping table.

Here’s an example:

# define the mapping table
mapping_table = str.maketrans({'a': '1', 'e': '2', 'i': '3', 'o': '4', 'u': '5'})

# define the input string
input_string = "hello world"

# use translate() method to replace characters
output_string = input_string.translate(mapping_table)



h2ll4 w4rld

In this example, we defined a mapping table using the `maketrans()` method that maps each vowel to a number. Then, we defined an input string “hello world”. Finally, we used the `translate()` method to replace vowels in the input string with their corresponding numbers.

The `translate()` method takes one argument which is the mapping table. The mapping table can be created using either the `maketrans()` or `dict()` method.

It’s important to note that if the mapping table contains a character that is not present in the input string, it will not be included in the output string. Similarly, if the input string contains a character that is not present in the mapping table, it will remain unchanged in the output string.

In conclusion, using `translate()` method is an efficient way of replacing multiple characters in a string in Python.


In this Python tutorial, we have learned how to replace a character in a string using various methods. We started by discussing the replace() method, which is the simplest way to replace characters in a string. We then moved on to the translate() method, which can be used to replace multiple characters at once.

Next, we explored regular expressions and how they can be used to replace characters in a string. We saw how the sub() method of the re module can be used to perform substitution operations on strings based on regular expression patterns.

Lastly, we covered some advanced techniques for replacing characters in a string, such as using list comprehension and lambda functions.

By now, you should have a good understanding of how to replace characters in a string using Python. This skill will come in handy when working with text data in various applications such as web development, data analysis or natural language processing. Keep practicing and experimenting with different methods until you become comfortable with them. Happy coding!

Interested in learning more? Check out our Introduction to Python course!

How to Become a Data Scientist PDF

Your FREE Guide to Become a Data Scientist

Discover the path to becoming a data scientist with our comprehensive FREE guide! Unlock your potential in this in-demand field and access valuable resources to kickstart your journey.

Don’t wait, download now and transform your career!

Pierian Training
Pierian Training
Pierian Training is a leading provider of high-quality technology training, with a focus on data science and cloud computing. Pierian Training offers live instructor-led training, self-paced online video courses, and private group and cohort training programs to support enterprises looking to upskill their employees.

You May Also Like

Data Science, Tutorials

Guide to NLTK – Natural Language Toolkit for Python

Introduction Natural Language Processing (NLP) lies at the heart of countless applications we use every day, from voice assistants to spam filters and machine translation. It allows machines to understand, interpret, and generate human language, bridging the gap between humans and computers. Within the vast landscape of NLP tools and techniques, the Natural Language Toolkit […]

Machine Learning, Tutorials

GridSearchCV with Scikit-Learn and Python

Introduction In the world of machine learning, finding the optimal set of hyperparameters for a model can significantly impact its performance and accuracy. However, searching through all possible combinations manually can be an incredibly time-consuming and error-prone process. This is where GridSearchCV, a powerful tool provided by Scikit-Learn library in Python, comes to the rescue. […]

Python Basics, Tutorials

Plotting Time Series in Python: A Complete Guide

Introduction Time series data is a type of data that is collected over time at regular intervals. It can be used to analyze trends, patterns, and behaviors over time. In order to effectively analyze time series data, it is important to visualize it in a way that is easy to understand. This is where plotting […]